ES5-Array-join

474 阅读1分钟

参考文章:join()

join()方法是一个非常实用的方法。
它以指定参数作为分隔符,将所有数组成员连接为一个字符串返回。

  • 注意:原数组不变。如果提供参数,默认用逗号分隔。如果Array的元素不是字符串,将自动转换为字符串后再连接。
var a = [1, 2, 3, 4];

a.join(' ') // '1 2 3 4'
a.join(' | ') // "1 | 2 | 3 | 4"
a.join() // "1,2,3,4"

如果数组成员是undefinednull或空位,会被转成空字符串

[undefined, null].join('#')
// '#'

['a',, 'b'].join('-')
// 'a--b'

使用join来重复字符串

function repeatString(str, n) {
     return new Array(n + 1).join(str);
     //长度为n+1的空数组
}
repeatString("a", 3); // "aaa"
repeatString("Hi", 5); // "HiHiHiHiHi"

通过call方法,join也可以用于字符串类似数组的对象。

Array.prototype.join.call('hello', '-')
// "h-e-l-l-o"

var obj = { 0: 'a', 1: 'b', length: 2 };
Array.prototype.join.call(obj, '-')
// 'a-b'

复习:ES5-String-match/search/replace/split