Array.prototype.join()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015å¹´7æ.
join() æ¹æ³æå°é£åï¼æä¸åé¡é£åï¼array-likeï¼ç©ä»¶ï¼ä¸ææçå
ç´ é£æ¥ãåä½µæä¸åå串ï¼ä¸¦å峿¤å串ã
å試ä¸ä¸
const elements = ["Fire", "Air", "Water"];
console.log(elements.join());
// Expected output: "Fire,Air,Water"
console.log(elements.join(""));
// Expected output: "FireAirWater"
console.log(elements.join("-"));
// Expected output: "Fire-Air-Water"
èªæ³
arr.join([separator])
忏
separator鏿æ§-
ç¨ä¾ééé£å䏿¯åå ç´ çå串ãå¦æå¿ è¦ç話ï¼separator æèªåè¢«è½æåä¸²åæ ã妿æªå³å ¥æ¤åæ¸ï¼é£åä¸çå ç´ å°é è¨ç¨è±æéèï¼ã,ãï¼ééã妿
separatoræ¯ç©ºå串ï¼åä½µå¾ï¼å ç´ é䏿æä»»ä½åå ã
åå³å¼
ä¸ååä½µææé£åå
ç´ çå串ãåå¦ arr.length çº 0ï¼å°åå³ç©ºå串ã
æè¿°
å°ææé£åä¸çå
ç´ è½æå串åæ
å¾ï¼é£æ¥åä½µæä¸åå串ãä»»ä½ undefined æ null çå
ç´ é½æè¢«è¦çºç©ºå串èçã
ç¯ä¾
>èä¾å種åä½µç¨æ³
䏿¹çç¯ä¾ä¸ï¼é¦å
宣åä¸åé£åâaï¼å
¶ä¸æä¸åå
ç´ ãæ¥èåå¥ç¨ï¼é è¨å¼ãéèãå èå空å串å°é£å飿¥ã
var a = ["Wind", "Rain", "Fire"];
a.join(); // 'Wind,Rain,Fire'
a.join(", "); // 'Wind, Rain, Fire'
a.join(" + "); // 'Wind + Rain + Fire'
a.join(""); // 'WindRainFire'
åä½µä¸åé¡é£åï¼array-likeï¼ç©ä»¶
䏿¹çç¯ä¾å°åä½µä¸åé¡é£åï¼array-likeï¼ç©ä»¶ï¼argumentsï¼ï¼èç± Function.prototype.call ä¾å¼å« Array.prototype.joinã
function f(a, b, c) {
var s = Array.prototype.join.call(arguments);
console.log(s); // '1,a,true'
}
f(1, "a", true);
//expected output: "1,a,true"
è¦ç¯
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-array.prototype.join> |