join()
方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。
语法
arr.join([separator])
参数
-
separator
可选 -
指定一个字符串来分隔数组的每个元素。如果需要,将分隔符转换为字符串。如果缺省该值,数组元素用逗号(
,
)分隔。如果separator
是空字符串(""
),则所有元素之间都没有任何字符。 -
返回值
-
一个所有数组元素连接的字符串。如果
arr.length
为0,则返回空字符串。
描述
所有的数组元素被转换成字符串,再用一个分隔符将这些字符串连接起来。
如果一个元素为 undefined
或 null
,它会被转换为空字符串。
示例
使用四种不同的分隔符连接数组元素
下例首先创建了一个数组 a
,包含有三个元素,然后用四种不同的分隔符连接所有数组元素。首先是默认的分隔符逗号,然后是一个逗号加空格,接下来是一个加号前后加空格,最后是一个空字符串。
var a = ['Wind', 'Rain', 'Fire']; var myVar1 = a.join(); // myVar1的值变为"Wind,Rain,Fire" var myVar2 = a.join(', '); // myVar2的值变为"Wind, Rain, Fire" var myVar3 = a.join(' + '); // myVar3的值变为"Wind + Rain + Fire" var myVar4 = a.join(''); // myVar4的值变为"WindRainFire"
连接类数组对象
下面的示例将连接类数组对象(arguments),通过在Array.prototype.join
上调用Function.prototype.call
。
function f(a, b, c) {
var s = Array.prototype.join.call(arguments);
console.log(s); // '1,a,true'
}
f(1, 'a', true);
规范
Specification | Status | Comment |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.1. |
ECMAScript 5.1 (ECMA-262) Array.prototype.join |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) Array.prototype.join |
Standard | |
ECMAScript Latest Draft (ECMA-262) Array.prototype.join |
Draft |
浏览器兼容性
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out
https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
join |
Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 5.5 | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes | nodejs Full support Yes |
Legend
- Full support
- Full support