2011-06-09 46 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。

相關問題