JS數(shù)組方法join()用法實例分析
本文實例講述了JS數(shù)組方法join()用法。分享給大家供大家參考,具體如下:
join()方法
- 定義和用法:
join() 方法用于把數(shù)組中的所有元素放入一個字符串。
元素是通過指定的分隔符進行分隔的。 - 語法:arrayObject.join(separator)
- 參數(shù):可選,指定要使用的分隔符。
注:不給join()方法傳入任何值,或者給它傳入undefined,則使用逗號作為分隔符。
IE7及更早版本會錯誤的使用字符串“undefined”作為分隔符。
數(shù)組中的某一項是null或undefined,那么該值在join()、toLocaleString()、toString()和valueOf()方法返回的結(jié)果中以空字符串表示。 - 返回值:
返回包含所有數(shù)組項的字符串。
代碼如下:
Array.prototype.copyJoin = function() {
var string = '';
for(var i = 0; i < this.length; i++) {
// 將數(shù)組中各項值為null 或undefined的項改為空字符串。
if(this[i] == null || this[i] == undefined) {
this[i] = '';
}
// 對數(shù)組進行操作
if(arguments.length == 1 && arguments[0] != undefined) { //指定使用的分隔符
string += (i < this.length - 1) ? this[i] + arguments[0] : this[i];
}
else { // 默認使用的分隔符————逗號
// if(i < this.length - 1) {
// string += this[i] + ',';
// }
// else {
// string += this[i];
// }
string += (i < this.length - 1) ? this[i] + ',' : this[i];
}
}
return string;
}
// 不傳任何值或者傳入undefined
var arr = [1, 2, 3, 4, 5, 6];
console.log(arr.copyJoin()); // 1,2,3,4,5,6
console.log(arr.copyJoin().length); // 11
console.log(arr.copyJoin(undefined)); // 1,2,3,4,5,6
console.log(arr.copyJoin(undefined).length); // 11
// 傳入?yún)?shù)
console.log(arr.copyJoin('||')); // 1||2||3||4||5||6
console.log(arr.copyJoin('||').length); // 16
// 數(shù)組中的某一項是null或undefined
var arr2 = [1, undefined, 2, undefined, 3, 4, 5, 6, 7, null, 8, null, 9];
console.log(arr2.copyJoin()); // 1,,2,,3,4,5,6,7,,8,,9
console.log(arr2.copyJoin().length); // 21
console.log(arr2.copyJoin(undefined)); // 1,,2,,3,4,5,6,7,,8,,9
console.log(arr2.copyJoin(undefined).length); // 21
運行結(jié)果:

以上在IE8+ join()方法一樣,但是在IE7及更早版本(copyJoin()方法不存在):
arr.join(undefined)); // 1undefined2undefined3undefined4undefined5undefined6 arr.join(undefined).length); // 51 arr2.join(undefined)); // 1undefinedundefined2undefinedundefined3undefined4undefined5undefined6undefined7undefinedundefined8undefinedundefined9 arr2.join(undefined).length); // 117
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《javascript面向?qū)ο笕腴T教程》、《JavaScript數(shù)學(xué)運算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript錯誤與調(diào)試技巧總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
JS判斷元素是否在數(shù)組內(nèi)的實現(xiàn)代碼
這篇文章主要介紹了JS判斷元素是否在數(shù)組內(nèi)的實現(xiàn)代碼,需要的朋友可以參考下2016-03-03
JavaScript創(chuàng)建對象的七種經(jīng)典方式分享
JavaScript 創(chuàng)建對象的方式有很多,通過 Object 構(gòu)造函數(shù)或?qū)ο笞置媪康姆绞揭部梢詣?chuàng)建單個對象,顯然這兩種方式會產(chǎn)生大量的重復(fù)代碼,并不適合量產(chǎn)。本文介紹了七種非常經(jīng)典的創(chuàng)建對象的方式,希望對大家有所幫助2022-11-11
微信小程序?qū)崿F(xiàn)發(fā)動態(tài)功能的示例代碼
最近做了一個校園拍賣小程序,想在里面添加一個類似校園圈功能,現(xiàn)在來一步一步實現(xiàn),對微信小程序?qū)崿F(xiàn)發(fā)動態(tài)功能感興趣的朋友一起看看吧2022-08-08
JavaScript實現(xiàn)瀏覽器內(nèi)多個標簽頁通信方式詳解
在瀏覽器中,多個標簽頁(頁簽)之間的通信有一些方法可以實現(xiàn),這篇文章為大家整理了6個常用的方法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-03-03
微信小程序自定義組件傳值 頁面和組件相互傳數(shù)據(jù)操作示例
這篇文章主要介紹了微信小程序自定義組件傳值 頁面和組件相互傳數(shù)據(jù)操作,結(jié)合實例形式分析了微信小程序常見傳值操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2019-05-05
小程序中讀取騰訊文檔的表格數(shù)據(jù)的實現(xiàn)
本文主要介紹了小程序中讀取騰訊文檔的表格數(shù)據(jù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07

