javascript中不易分清的slice,splice和split三個函數_javascript技巧

來源:互聯網
上載者:User

每每見到這三個函數,我都會很懵,一定要到網上搜搜;今天,恰巧又見到了它們,所以想必是時候為它們做個筆記啦

1.slice(數組)

用法:array.slice(start,end)

解釋:該方法是對數組進行部分截取,並返回一個數組副本;參數start是截取的開始數組索引,end參數等於你要取的最後一個字元的位置值加上1(可選)

//如果不傳入參數二,那麼將從參數一的索引位置開始截取,一直到數組尾var a=[1,2,3,4,5,6];var b=a.slice(0,3);  //[1,2,3]var c=a.slice(3);    //[4,5,6]//如果兩個參數中的任何一個是負數,array.length會和它們相加,試圖讓它們成為非負數,舉例說明://當只傳入一個參數,且是負數時,length會與參數相加,然後再截取var a=[1,2,3,4,5,6];var b=a.slice(-1);  //[6]//當只傳入一個參數,是負數時,並且參數的絕對值大於數組length時,會截取整個數組var a=[1,2,3,4,5,6];var b=a.slice(-6);  //[1,2,3,4,5,6]var c=a.slice(-8);  //[1,2,3,4,5,6]//當傳入兩個參數一正一負時,length也會先於負數相加後,再截取var a=[1,2,3,4,5,6];var b=a.slice(2,-3);  //[3]//當傳入一個參數,大於length時,將返回一個空數組var a=[1,2,3,4,5,6];var b=a.slice(6);  //[]

2.slice(字串)

用法:string.slice(start,end)

解釋:slice方法複製string的一部分來構造一個新的字串,用法與參數勻和數組的slice方法一樣;end參數等於你要取的最後一個字元的位置值加上1

//舉個簡單的例子var a="i am a boy";var b=a.slice(0,6);  //"i am a"

3.splice(數組)

用法:array.splice(start,deleteCount,item...)

解釋:splice方法從array中移除一個或多個數組,並用新的item替換它們。參數start是從數組array中移除元素的開始位置。參數deleteCount是要移除的元素的個數。

如果有額外的參數,那麼item會插入到被移除元素的位置上。它返回一個包含被移除元素的數組。

//舉一個簡單的例子var a=['a','b','c'];var b=a.splice(1,1,'e','f');  //a=['a','e','f','c'],b=['b']

4.split(字串)

用法:string.split(separator,limit)

解釋:split方法把這個string分割成片段來建立一個字串數組。選擇性參數limit可以限制被分割的片段數量。separator參數可以是一個字串或一個Regex。如果

separator是一個Null 字元,會返回一個單字元的數組。

//再舉一個簡單的例子var a="0123456";var b=a.split("",3);  //b=["0","1","2"]

以上就是本文的全部內容,希望對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.