最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScrip數(shù)組刪除特定元素的幾種方法總結(jié)

 更新時(shí)間:2017年09月06日 11:25:28   作者:warnerwu  
從js數(shù)組中刪除指定元素是我們每個(gè)人都遇到的問(wèn)題,網(wǎng)上這方面的資料也很多,但有的時(shí)間過(guò)于久遠(yuǎn),有的內(nèi)容不夠全面,所以自己來(lái)整理下,這篇文章主要給大家總結(jié)介紹了關(guān)于JavaScrip數(shù)組刪除特定元素的多種方法,需要的朋友可以參考下。

前言

可能一說(shuō)到刪除數(shù)組特定元素你估計(jì)不止一種方法可以實(shí)現(xiàn),那么下面且來(lái)看看我總結(jié)的這幾種方法,可能會(huì)對(duì)你有所幫助!話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。

源數(shù)組

var arr = ["George", "John", "Thomas", "James", "Adrew", "Martin"];

偽刪除

什么是偽刪除呢? 就是說(shuō)將數(shù)組元素值設(shè)置為null;

arr[ arr.indexOf( 'Thomas' ) ] = null;

刪除后的數(shù)組是這個(gè)樣子的:

["George", "John", null, "James", "Adrew", "Martin"]

不過(guò)要注意, 這意味著數(shù)組Array也就是變量arr的長(zhǎng)度保持不變

完全刪除

是什么是完全刪除呢? 這個(gè)問(wèn)題你可能從字面上也能想得到就是真正的刪除數(shù)組Array的元素值, 并且會(huì)改變數(shù)組的長(zhǎng)度, 可以通過(guò)內(nèi)置數(shù)組對(duì)象Array的splice方法來(lái)實(shí)現(xiàn)這個(gè)需求!說(shuō)到splice這個(gè)方法就要說(shuō)一說(shuō)它的具體參數(shù)了:

Array.prototype.splice = function(start,deleteCount,items) {};

上面是內(nèi)置對(duì)象Array的splice方法原型定義, 中文意思呢是:剪接, 其參數(shù)的意義是:

  • start: 起點(diǎn)索引值
  • deleteCount: 要?jiǎng)h除的元素個(gè)數(shù)
  • items: 刪除后替換/追加的元素
    參數(shù)不加時(shí)就表示刪除元素, 并且還要結(jié)合 deleteCount 的參數(shù)值
    如果 deleteCount 為 1, items 參數(shù)位置給一個(gè)參數(shù)值, 則表示替換
    如果 deleteCount 為 1, items 參數(shù)位置給多于一個(gè)的參數(shù)值, 則表示替換及追加元素

通過(guò)splice方法刪除上面 偽刪除 留下的元素值 null

arr.splice( arr.indexOf( null ), 1 );

刪除后的數(shù)組是這個(gè)樣子的:

["George", "John", "James", "Adrew", "Martin"]

既然說(shuō)到了splice方法就順便再說(shuō)一下它的其它功能, 如 替換元素, 追加元素 等操作吧!

splice函數(shù) - 替換元素

現(xiàn)在數(shù)組結(jié)構(gòu)是這樣的:

["George", "John", "James", "Adrew", "Martin"]

想要將數(shù)組元素 James 替換為 Tom

arr.splice( arr.indexOf( 'James' ), 1, 'Tom' );

替換后的數(shù)組結(jié)構(gòu)是這個(gè)樣子的:

["George", "John", "Tom", "Adrew", "Martin"]

splice函數(shù) - 替換并追加元素

現(xiàn)在當(dāng)前數(shù)組結(jié)構(gòu)是這樣的:

["George", "John", "Tom", "Adrew", "Martin"]

想要將數(shù)組元素 Tom 替換為 Judy 并追加 Linda 和 Alisa

arr.splice( arr.indexOf( 'Tom' ), 1, 'Judy', 'Linda', 'Alisa' );

替換及追加后的數(shù)組結(jié)構(gòu)是這個(gè)樣子的:

["George", "John", "Judy", "Linda", "Alisa", "Adrew", "Martin"]

splice函數(shù) - 追加元素

追加元素你可以選擇任意位置這取決于你的具體需求, 關(guān)鍵是在于 start 的取值索引位置而已!當(dāng)前數(shù)組結(jié)構(gòu)如下所示:

["George", "John", "Judy", "Linda", "Alisa", "Adrew", "Martin"]

比如說(shuō)要在 Linda 和 Alisa 之間追加 Bill 和 Blake

arr.splice( arr.indexOf( 'Linda' ) + 1, 0, 'Bill', 'Blake' );

追加后的數(shù)組結(jié)構(gòu)是下面這個(gè)樣子的:

["George", "John", "Judy", "Linda", "Bill", "Blake", "Alisa", "Adrew", "Martin"]
  • 起點(diǎn)位置 arr.indexOf( 'Linda' ) + 1 就是在數(shù)組元素 Linda 之后了
  • 刪除元素個(gè)數(shù)參數(shù)這里設(shè)置的是 0 這個(gè)是追加元素的關(guān)鍵, 也就是說(shuō)不刪除元素
  • 'Bill', 'Blake' 這個(gè)呢就是內(nèi)置對(duì)象Array的splice方法的最后一個(gè)參數(shù) items 它表示0個(gè)是和多個(gè), 根據(jù) deleteCount 參數(shù)值不同表示的含義也會(huì)不同, 這里 deleteCount 參數(shù)是 0 并且 items 又有兩個(gè)值來(lái)表示這個(gè)參數(shù), 所示說(shuō)就是追加元素值 'Bill', 'Blake'

以上說(shuō)的是刪除數(shù)組中特定的元素, 那刪除第一個(gè)元素和最后一個(gè)元素那實(shí)現(xiàn)在是太簡(jiǎn)單了, 這里簡(jiǎn)單提一下就是了

刪除數(shù)組中第一個(gè)元素

arr.shift();

刪除后的數(shù)組是這個(gè)樣子的:

["John", "Judy", "Linda", "Bill", "Blake", "Alisa", "Adrew", "Martin"]

刪除數(shù)組中最后一個(gè)元素

arr.pop();

刪除后的數(shù)組是這個(gè)樣子的:

["John", "Judy", "Linda", "Bill", "Blake", "Alisa", "Adrew"]

總結(jié)

以上就是JavaScrip數(shù)組刪除特定元素個(gè)人所總結(jié)的一些方法,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果您還要其它的一些好的方法, 或有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • JavaScript實(shí)現(xiàn)echarts水球圖百分比展示大屏可視化

    JavaScript實(shí)現(xiàn)echarts水球圖百分比展示大屏可視化

    這篇文章主要為大家介紹了JavaScript實(shí)現(xiàn)echarts水球圖百分比展示大屏可視化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • javascript合并兩個(gè)數(shù)組最簡(jiǎn)單的實(shí)現(xiàn)方法

    javascript合并兩個(gè)數(shù)組最簡(jiǎn)單的實(shí)現(xiàn)方法

    這篇文章主要介紹了javascript合并兩個(gè)數(shù)組最簡(jiǎn)單的實(shí)現(xiàn)方法,方法很簡(jiǎn)單,有需要的朋友們可以學(xué)習(xí)下。
    2019-09-09
  • 小程序?qū)崿F(xiàn)下拉列表框菜單

    小程序?qū)崿F(xiàn)下拉列表框菜單

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)下拉列表框菜單,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 詳解如何用babel轉(zhuǎn)換es6的class語(yǔ)法

    詳解如何用babel轉(zhuǎn)換es6的class語(yǔ)法

    這篇文章主要介紹了詳解如何用babel轉(zhuǎn)換es6的class語(yǔ)法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • vue 組件銷毀并重置的實(shí)現(xiàn)

    vue 組件銷毀并重置的實(shí)現(xiàn)

    這篇文章主要介紹了vue 組件銷毀并重置的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Layui實(shí)現(xiàn)多條件查詢的示例代碼

    Layui實(shí)現(xiàn)多條件查詢的示例代碼

    本文主要介紹了Layui實(shí)現(xiàn)多條件查詢,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • 關(guān)于JS中的apply,call,bind的深入解析

    關(guān)于JS中的apply,call,bind的深入解析

    下面小編就為大家?guī)?lái)一篇關(guān)于JS中的apply,call,bind的深入解析。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-04-04
  • IE8對(duì)JS通過(guò)屬性和數(shù)組遍歷解析不一樣的地方探討

    IE8對(duì)JS通過(guò)屬性和數(shù)組遍歷解析不一樣的地方探討

    如果是非IE8瀏覽器例如(IE7、IE9、Chrome、FF,僅測(cè)試這幾種)通過(guò)屬性和數(shù)組遍歷,其結(jié)果是一樣的,但對(duì)于IE8,結(jié)果會(huì)有一點(diǎn)小小的差異,在IE8下會(huì)把原型鏈擴(kuò)展方法當(dāng)做一個(gè)屬性輸出,大家可以測(cè)試一下
    2013-05-05
  • 微信小程序開(kāi)發(fā)之表單驗(yàn)證WxValidate使用

    微信小程序開(kāi)發(fā)之表單驗(yàn)證WxValidate使用

    本文主要介紹了微信小程序開(kāi)發(fā)之表單驗(yàn)證WxValidate使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • uniapp實(shí)現(xiàn)橫屏簽字版

    uniapp實(shí)現(xiàn)橫屏簽字版

    這篇文章主要為大家詳細(xì)介紹了uniapp實(shí)現(xiàn)橫屏簽字版,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評(píng)論

海安县| 怀远县| 天峻县| 襄城县| 铜梁县| 怀集县| 吴江市| 丹棱县| 富阳市| 永宁县| 综艺| 新郑市| 和平区| 黑河市| 聊城市| 隆子县| 文安县| 红安县| 新化县| 西峡县| 茌平县| 馆陶县| 大埔区| 文昌市| 高州市| 定陶县| 收藏| 巴林右旗| 章丘市| 扬中市| 密云县| 威信县| 凤台县| 博湖县| 田东县| 武邑县| 兴山县| 左贡县| 文成县| 阳春市| 平罗县|