2011-06-09 121 views
4

w3schools join()方法所述,将数组的所有元素连接到一个字符串中,并返回该字符串。 所以,如果你尝试以下方法:为什么join()方法返回的结果比预期的要多

console.log(new Array(6).join('a')); 

我希望得到:"aaaaaa" 而是我得到:"aaaaa",这意味着少了一个。

有人可以解释我为什么会发生这种情况?

回答

13

它把你的数组中的每个元素之间,而不是每个之后,所以6个元素有5个加入者。

这个拨弄你可以看到多一点正是加入做: http://jsfiddle.net/YKhmp/

4

你的阵列将与六大要素入手。由于您加入了“a”,字母“a”将被添加到所有元素之间的字符串中。

如果你的数组中有两个元素“Hello”和“World”,并且连接了一个连字符,它会加入“Hello-World”。所以,如果你有一个n值的数组,它只需要加入n-1。

相关问题