1. 程式人生 > >陣列方法實現(一)————陣列方法join()

陣列方法實現(一)————陣列方法join()

join()方法

  1. 定義和用法:
    join() 方法用於把陣列中的所有元素放入一個字串。
    元素是通過指定的分隔符進行分隔的。
  2. 語法:arrayObject.join(separator)
  3. 引數:可選,指定要使用的分隔符。
    注:不給join()方法傳入任何值,或者給它傳入undefined,則使用逗號作為分隔符。
    IE7及更早版本會錯誤的使用字串“undefined”作為分隔符。
    陣列中的某一項是null或undefined,那麼該值在join()、toLocaleString()、toString()和valueOf()方法返回的結果中以空字串表示。
  4. 返回值:
    返回包含所有陣列項的字串。

程式碼如下:

Array.prototype.copyJoin = function() {
    var string = '';
    for(var i = 0; i < this.length; i++) {
        // 將陣列中各項值為null 或undefined的項改為空字串。
        if(this[i] == null || this[i] == undefined) {
            this[i] = '';
        }
        // 對陣列進行操作
        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]; arr.copyJoin(); // 1,2,3,4,5,6 arr.copyJoin().length; // 11 arr.copyJoin(undefined); // 1,2,3,4,5,6 arr.copyJoin(undefined).length; // 11 // 傳入引數 arr.copyJoin('||'); // 1||2||3||4||5||6 arr.copyJoin('||').length; // 16 // 陣列中的某一項是null或undefined var arr2 = [1, undefined, 2, undefined, 3, 4, 5, 6, 7, null, 8, null, 9]; arr2.copyJoin(); // 1,,2,,3,4,5,6,7,,8,,9 arr2.copyJoin().length; // 21 arr2.copyJoin(undefined); // 1,,2,,3,4,5,6,7,,8,,9 arr2.copyJoin(undefined).length; // 21

以上在IE8+ join()方法一樣,但是在IE7及更早版本(copyJoin()方法不存在):

arr.join(undefined));  // 1undefined2undefined3undefined4undefined5undefined6
arr.join(undefined).length); // 51

arr2.join(undefined)); //  1undefinedundefined2undefinedundefined3undefined4undefined5undefined6undefined7undefinedundefined8undefinedundefined9
arr2.join(undefined).length);  //  117

相關推薦

陣列方法實現————陣列方法join()

join()方法 定義和用法: join() 方法用於把陣列中的所有元素放入一個字串。 元素是通過指定的分隔符進行分隔的。 語法:arrayObject.join(separator) 引數

陣列方法實現————陣列方法reverse()

reverse()方法 定義:反轉陣列項的順序 語法: arr.reverse() 引數:/ 返回值:返回該陣列的引用。 程式碼如下: var arr1 = [1, 2, 3, 4, 5,

陣列方法實現————陣列方法indexOf()

indexOf()、lastIndexOf()方法 相同點: 都接收兩個引數————要查詢的項、要查詢起點位置是索引(可選) 不同點:查詢方式 indexOf():從陣列的開頭(位置0)向後查詢 lastIndexOf():從陣列末尾向前查詢 下面僅

python 寫入csv的幾種方法總結陣列,二維矩陣的寫入

轉自:https://blog.csdn.net/waple_0820/article/details/70049953最常用的一種方法,利用pandas包import pandas as pd #任意的多組列表 a = [1,2,3] b = [4,5,6] #

異步線程池的實現-------具體實現方法

fun format 測試 路徑 線程池。 用戶體驗 deb tar clas 本篇是這個內容的第一篇,主要是寫:遇到的問題,和自己摸索實現的方法。後面還會有一篇是總結性地寫線程池的相關內容(偏理論的)。 一、背景介紹 朋友的項目開發到一定程度之後,又遇到

資料結構實現:動態陣列C++版

資料結構實現(一):動態陣列(C++版) 1. 概念及基本框架 2. 基本操作程式實現 2.1 增加操作 2.2 刪除操作 2.3 修改操作 2.4 查詢操作 2.5 其他操作 3. 演算法複雜度分析

統計學習方法筆記:K近鄰法的實現:kd樹

  實現k近鄰演算法時,首要考慮的問題是如何對訓練資料進行快速的k近鄰搜尋。這點在特徵空間的維數大於訓練資料容量時尤為重要。 構造kd樹   kd 樹是一種對k為空間中的例項點進行儲存的一邊對其進行快速檢索的樹形資料結構。kd樹是二叉樹,表示對k維空間的一個劃分(parti

JAVA本地方法呼叫2陣列引數傳遞

JAVA可以把陣列作為引數傳遞給本地方法,在本地方法中可以訪問陣列中的元素。 不過,在本地方法卻不能直接訪問傳進來的陣列,需要進行一定的轉換。舉例說明: 1、建立 JAVA 類: package test; public class Test { publi

資料結構與算法系列陣列實現

## 資料結構與算法系列(一)陣列實現 注:`這是一個新的系列,主要是由於資料結構與演算法是程式設計師以後立身的根本,我以前在大學也學過,但是很快就忘記了,現在想把它撿起來,通過寫一個系列文章,加深自己的理解,其實我寫這個系列主要是想先通過預熱,然後去刷leetcode。刷演算法本身是想鍛鍊自己寫程式的思維,

Android解析HTML網頁數據 第一個方法Jsoup

原生 日誌 href attr mage connect auto htm baidu 最近發現一些無聊的東西,就是抓取網頁上的數據,然後使用安卓原生代碼顯示出來,或者說借用網頁數據,用自定義的View顯示。 借助jsoup-1.10.2.jar庫,獲取並解析數據。(Jso

HBase性能優化方法總結

rec inter next memstore 不支持 lena cred 追加 查詢效率 一 表的設計 1.1 Pre-Creating Regions 默認情況下,在創建HBase表的時候會自動創建一個region分區,當導入數據的時候,所有的HBase客戶端都向這

優化電腦方法收集——加內存系統沒變化?改幾項註冊表再感受下

level -c emca regedit bcb 使用 lda 硬盤 空間 大內存只有在PS、視頻處理上才會有明顯的效果,主要是因為Windows要照顧沒有配備超大容量內存的電腦,保證使用體驗。 So,恰巧你的Win7有超過8GB的內存、Win10又剛好了16GB內存,

數據挖掘方法系列數據探索

引用 手工錄入 如果 操作員 開始 區間和 運用 基礎 屬性 為什麽要做數據探索?了解數據的類型和人與人溝通過程中了解對方的性別一樣重要,人與人溝通知道對方的性別才能用不同的方式與其溝通,不同的數據類型能做的操作也不一樣。探索數據探索哪些?數據的類型和數據的質量。數據類型分

演算法是什麼陣列的演算法記錄

演算法是什麼(一)陣列的演算法記錄   liuyuhang原創,未經允許禁止轉載     從入門一個一個來吧,先說陣列的演算法:   1、求極值   int[] arr01 = { 1, 3, 5, 76, 23, 44

工廠三兄弟之工廠方法模式

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Python3常用資料結構及方法介紹——列表

一.列表 list 1特點: ①列表可更改 ②方括號 [1, 2, 3] 2常用列表操作: ①索引: >>> list1 = [1,2,3,4,5,6,7,8,9,10] >>> list1[4] 5 ②分片: >>>

李航—統計學習方法筆記

什麼是獨立同分布? 百度: 在概率統計理論中,指隨機過程中,任何時刻的取值都為隨機變數,如果這些隨機變數服從同一分佈,並且互相獨立,那麼這些隨機變數是獨立同分布。如果隨機變數X1和X2獨立,是指X1的取值不影響X2的取值,X2的取值也不影響X1的取值且隨機變數X1和X2服從同一分佈,這意味著X1和X2具有

Python資料分析numpy庫方法簡介

Numpy功能簡介: 1.官網:www.numpy.org 2.特點:(1)高效的多維矩陣/陣列;    (2);複雜的廣播功能    (3):有大量的內建數學統計函式 矩陣(多維陣列): 一維陣列:  ([ 值1,值2,值3]) 維維陣列: ([[1,2,3],[4,5,6]])

二維陣列專練

p1077 陣列一位轉二維 題目 描述 Description 輸入一個一維陣列,按要求建立如下二維陣列,並輸出 輸入格式 Input Format 第一行一個整數n<=500 第二行,連續n個整數。 輸出格式 Output Format 按要求的二維陣列 樣例輸入

java,Synchronized同步方法例項

是執行緒獲取物件的鎖,且該執行緒執行物件所屬類中的同步方法! 當然執行緒也是物件,也有鎖,鎖只是物件的一個標誌位。 哪個執行緒獲得了SynClass的物件鎖,則哪個執行緒進入同步方法中執行 publi