成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

細(xì)說 Javascript 數(shù)組篇(二) : 數(shù)組的構(gòu)造函數(shù)和常見操作

kaka / 1568人閱讀

摘要:數(shù)組的構(gòu)造函數(shù)由于數(shù)組的構(gòu)造函數(shù)在處理參數(shù)時的不確定性,因此強(qiáng)烈建議使用符號來創(chuàng)建一個新數(shù)組??偨Y(jié)綜上所述,我們應(yīng)該盡量使用來創(chuàng)建新函數(shù),而不是數(shù)組的構(gòu)造函數(shù),這樣代碼將有更好的可讀性。

數(shù)組的構(gòu)造函數(shù)

由于數(shù)組的構(gòu)造函數(shù)在處理參數(shù)時的不確定性,因此強(qiáng)烈建議使用 [] 符號來創(chuàng)建一個新數(shù)組。

[1, 2, 3]; // Result: [1, 2, 3]
new Array(1, 2, 3); // Result: [1, 2, 3]

[3]; // Result: [3]
new Array(3); // Result: []
new Array("3") // Result: ["3"]

當(dāng)只有一個參數(shù)被傳遞到數(shù)組的構(gòu)造函數(shù)中,并且這個參數(shù)還是一個數(shù)字時,構(gòu)造函數(shù)將會返回一個元素值為 undefined 的數(shù)組,而且這個數(shù)組的 length 屬性被設(shè)置為傳入構(gòu)造函數(shù)的數(shù)字參數(shù)。但實(shí)際上上新數(shù)組的索引并沒有被初始化。

這種用法只有在很少數(shù)情況下會被使用,比如循環(huán)字符串時,這種用法可以避免使用一個循環(huán)。

new Array(count + 1).join(stringToRepeat);
總結(jié)

綜上所述,我們應(yīng)該盡量使用 [] 來創(chuàng)建新函數(shù),而不是數(shù)組的構(gòu)造函數(shù),這樣代碼將有更好的可讀性。

數(shù)據(jù)常見操作
  

因?yàn)檫@篇博文的原文比較短,所以我打算把一些常用的數(shù)組操作方法也總結(jié)一下:

添加元素

1.push - 將一個或多個新元素添加到數(shù)組結(jié)尾,并返回?cái)?shù)組新長度。

2.unshift - 將一個或多個新元素添加到數(shù)組開始,數(shù)組中的元素自動后移,返回?cái)?shù)組新長度。

3.splice - 將一個或多個新元素插入到數(shù)組的指定位置,插入位置的元素自動后移,返回 []。

刪除元素

1.pop - 移除最后一個元素并返回該元素值。

2.shift - 移除最前一個元素并返回該元素值,數(shù)組中元素自動前移。

3.splice - 刪除從指定位置 deletePos 開始的指定數(shù)量 deleteCount 的元素,數(shù)組形式返回所移除的元素。(注意與添加元素時參數(shù)的差異)

其他操作

1.join - 返回字符串,這個字符串將數(shù)組的每一個元素值連接在一起,中間用 separator 參數(shù)隔開。

2.slice - 方法用于返回?cái)?shù)組中一個片段或子數(shù)組,如果只寫一個參數(shù)返回參數(shù)到數(shù)組結(jié)束部分,如果參數(shù)出現(xiàn)負(fù)數(shù),則從數(shù)組尾部計(jì)數(shù),如果 start 大于 end 返回空數(shù)組,slice 不會改變原數(shù)組,而是返回一個新的數(shù)組。

3.concat - 將多個數(shù)組(也可以是字符串,或者是數(shù)組和字符串的混合)連接為一個數(shù)組,返回連接好的新的數(shù)組。

4.reverse - 反轉(zhuǎn)元素(最前的排到最后、最后的排到最前),返回修改后的數(shù)組。

5.sort - 對數(shù)組元素排序,返回修改后的數(shù)組。當(dāng)沒有參數(shù)的時候會按字母表升序排序,也可以可以傳一個排序方法進(jìn)去。

參考:

http://bonsaiden.github.io/JavaScript-Garden/#array.constructor

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/78091.html

相關(guān)文章

  • 細(xì)說 jQuery Ajax操作(一) - 數(shù)據(jù)加載

    摘要:同樣將其綁定在按鈕點(diǎn)擊事件上查看結(jié)果為這里需要注意,如果文檔內(nèi)的格式錯誤,雖然不會報(bào)錯,但是將無法執(zhí)行回調(diào)函數(shù)。 Ajax 通俗來講即不需要刷新頁面即可從服務(wù)器或客戶端上加載數(shù)據(jù),當(dāng)然這些數(shù)據(jù)的格式是多種多樣的。 加載 HTML 我們通常使用加載 HTML 的方法來加載 HTML 片段,并插入到指定位置,假設(shè)當(dāng)前頁面為: load showImg(http://segmen...

    paulli3 評論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你“對象”還好嗎?

    摘要:很多情況下,通常一個人類,即創(chuàng)建了一個具體的對象。對象就是數(shù)據(jù),對象本身不包含方法。類是相似對象的描述,稱為類的定義,是該類對象的藍(lán)圖或原型。在中,對象通過對類的實(shí)體化形成的對象。一類的對象抽取出來。注意中,對象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    李昌杰 評論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你“對象”還好嗎?

    摘要:很多情況下,通常一個人類,即創(chuàng)建了一個具體的對象。對象就是數(shù)據(jù),對象本身不包含方法。類是相似對象的描述,稱為類的定義,是該類對象的藍(lán)圖或原型。在中,對象通過對類的實(shí)體化形成的對象。一類的對象抽取出來。注意中,對象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    Lyux 評論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你“對象”還好嗎?

    摘要:很多情況下,通常一個人類,即創(chuàng)建了一個具體的對象。對象就是數(shù)據(jù),對象本身不包含方法。類是相似對象的描述,稱為類的定義,是該類對象的藍(lán)圖或原型。在中,對象通過對類的實(shí)體化形成的對象。一類的對象抽取出來。注意中,對象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    AaronYuan 評論0 收藏0
  • this全面解析()

    摘要:在傳統(tǒng)的面向類的語言中,構(gòu)造函數(shù)是類中的一些特殊方法,使用初始化類是會調(diào)用類中的構(gòu)造函數(shù)。 在上一節(jié)中我們詳細(xì)介紹了this的兩種綁定方式,默認(rèn)綁定和隱式綁定,在這一節(jié)我們繼續(xù)介紹this的另外兩種綁定方式顯示綁定和new綁定。那么,我們要解決的問題當(dāng)然就是上一節(jié)中我們提到的:this丟失! 顯式綁定 在隱式綁定中,我們必須在一個對象的內(nèi)部包含一個指向函數(shù)的屬性,并通過這個屬性間接引用...

    iflove 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<