国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

詳解es6新增數組方法簡便了哪些操作

2024-05-06 15:39:42
字體:
來源:轉載
供稿:網友

什么是es6?

在這里不過多闡述,我也是跟著阮一峰大佬的《es6入門 》來學習的,es6新增了很多的方法、屬性,讓我們在編碼中得到了很高的提升,在這里只對array這塊進行闡述,其他的就過不多介紹了。

言歸正傳,在項目中,經常會遇到處理數據,篩選數據的要求,我們更多的會借助于for循環來完成,比如:數組去重,傳統方法如下(以下所有實例只列舉一種)

let a = [1,2,2,3,3,4,5];let b = [a[0]];for(let i = 0; i < a.length; i++){  let flag = false;  for(let j = 0; j < b.length; j++){    if( a[i] === b[j] ){      flag = true;      break;    }  }  if( !flag ){    b.push(a[i])  }}console.log(b) // [1,2,3,4,5]

上面的是es6之前的處理方法,可以解決問題,但代碼量可著實不少啊!在es6中,只需要一行代碼就可以搞定!

Array.from &&  newSet()

let a = [1,2,2,3,3,4,5];let b = Array.from(new Set(a))console.log(b) // [1,2,3,4,5]

是不是及其簡單!其中 new Set()會把重復的數據過濾到,得到一個類數組的對象,Array.from()可以把類數組的對象轉換為真正的數組對象,有興趣的同學可以對這兩個屬性進行更加深入的了解。

數組過濾

在我們拿到后端數據的時候,可能會對數據進行一些篩選、過濾,傳統的做法如下

// 取出數組中name為kele的數組集合let a = [  {    name: 'kele',    title: '可口可樂'  },  {    name: 'kele',    title: '芬達'  },  {    name: 'wlg',    title: '王老吉'  }]let b = [];for(let i = 0; i < a.length; i++){  if( a[i].name === 'kele' ){    b.push(a[i])  }}console.log(b) //[{name: 'kele', title: '可口可樂'},{name: 'kele', title: '芬達'}]

es6中的處理方法如下

Array.filter(callback)

let a = [  {    name: 'kele',    title: '可口可樂'  },  {    name: 'kele',    title: '芬達'  },  {    name: 'wlg',    title: '王老吉'  }]let b = a.filter(item => item.name === 'kele');console.log(b) //[{name: 'kele', title: '可口可樂'},{name: 'kele', title: '芬達'}]

同樣的,Array.filter()讓我們擺脫了for循環,代碼看起來更加的清爽!

Array.every(callback)

這個方法主要是判斷數組中所有的元素都符合條件時,返回true

let a = [1,2,3,4,5];let b = a.every(item => item > 2);console.log(b) // false

Array.some(callback)

這個方法和上一個略有區別,這個方法主要判斷數組中有一個元素符合條件,就返回true

let a = [1,2,3,4,5];let b = a.some(item => item > 2);console.log(b) // true

Array.find(callback)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 天水市| 迁安市| 大悟县| 鲁甸县| 潮州市| 丹棱县| 铜山县| 金湖县| 息烽县| 蓬莱市| 张家界市| 蒙山县| 如皋市| 张家口市| 焉耆| 昌都县| 天等县| 肇源县| 阜康市| 密山市| 乡城县| 沧源| 拜泉县| 册亨县| 罗山县| 策勒县| 扎兰屯市| 华阴市| 神木县| 道孚县| 四川省| 宕昌县| 股票| 思茅市| 林甸县| 麻栗坡县| 唐海县| 桃园县| 杭锦后旗| 徐水县| 隆林|