如w3schools join()方法所述,将数组的所有元素连接到一个字符串中,并返回该字符串。 所以,如果你尝试以下方法:为什么join()方法返回的结果比预期的要多
console.log(new Array(6).join('a'));
我希望得到:"aaaaaa"
而是我得到:"aaaaa"
,这意味着少了一个。
有人可以解释我为什么会发生这种情况?
如w3schools join()方法所述,将数组的所有元素连接到一个字符串中,并返回该字符串。 所以,如果你尝试以下方法:为什么join()方法返回的结果比预期的要多
console.log(new Array(6).join('a'));
我希望得到:"aaaaaa"
而是我得到:"aaaaa"
,这意味着少了一个。
有人可以解释我为什么会发生这种情况?
它把你的数组中的每个元素之间,而不是每个之后,所以6个元素有5个加入者。
这个拨弄你可以看到多一点正是加入做: http://jsfiddle.net/YKhmp/
你的阵列将与六大要素入手。由于您加入了“a”,字母“a”将被添加到所有元素之间的字符串中。
如果你的数组中有两个元素“Hello”和“World”,并且连接了一个连字符,它会加入“Hello-World”。所以,如果你有一个n值的数组,它只需要加入n-1。