国产黄色免费网站_久久天天做天天爱综合色_精品国产一区久久久_成人黄色激情网站_久久成人在线视频_美女一区二区在线观看_亚洲精品免费一区亚洲精品免费精品一区 _91精品国产综合久久精品麻豆

5 個 JS 數組技巧可提高你的開發技能

2020-7-1    seo達人

1. 隨機排列

在開發者,有時候我們需要對數組的順序進行重新的洗牌。 在 JS 中并沒有提供數組隨機排序的方法,這里提供一個隨機排序的方法:


function shuffle(arr) {

 var i, j, temp;

 for (i = arr.length - 1; i > 0; i--) {

   j = Math.floor(Math.random() * (i + 1));

   temp = arr[i];

   arr[i] = arr[j];

   arr[j] = temp;

 }

 return arr;

}

2. 唯一值

在開發者,我們經常需要過濾重復的值,這里提供幾種方式來過濾數組的重復值。


使用 Set 對象

使用 Set() 函數,此函數可與單個值數組一起使用。對于數組中嵌套的對象值而言,不是一個好的選擇。


const numArray = [1,2,3,4,2,3,4,5,1,1,2,3,3,4,5,6,7,8,2,4,6];


// 使用 Array.from 方法

Array.from(new Set(numArray));


// 使用展開方式

[...new Set(numArray)]

使用 Array.filter

使用 filter 方法,我們可以對元素是對象的進行過濾。


const data = [

 {id: 1, name: 'Lemon'},

 {id: 2, name: 'Mint'},

 {id: 3, name: 'Mango'},

 {id: 4, name: 'Apple'},

 {id: 5, name: 'Lemon'},

 {id: 6, name: 'Mint'},

 {id: 7, name: 'Mango'},

 {id: 8, name: 'Apple'},

]


function findUnique(data) {

 return data.filter((value, index, array) => {

   if (array.findIndex(item => item.name === value.name) === index) {

     return value;

   }

 })

}

3. 使用 loadsh 的 lodash 方法

import {uniqBy} from 'lodash'


const data = [

 {id: 1, name: 'Lemon'},

 {id: 2, name: 'Mint'},

 {id: 3, name: 'Mango'},

 {id: 4, name: 'Apple'},

 {id: 5, name: 'Lemon'},

 {id: 6, name: 'Mint'},

 {id: 7, name: 'Mango'},

 {id: 8, name: 'Apple'},

]


function findUnique(data) {

 return uniqBy(data, e => {

       return e.name

   })

}

3. 按屬性對 對象數組 進行排序

我們知道 JS 數組中的 sort 方法是按字典順序進行排序的,所以對于字符串類, 該方法是可以很好的正常工作,但對于數據元素是對象類型,就不太好使了,這里我們需要自定義一個排序方法。


在比較函數中,我們將根據以下條件返回值:


小于0:A 在 B 之前

大于0 :B 在 A 之前

等于0 :A 和 B 彼此保持不變

const data = [

 {id: 1, name: 'Lemon', type: 'fruit'},

 {id: 2, name: 'Mint', type: 'vegetable'},

 {id: 3, name: 'Mango', type: 'grain'},

 {id: 4, name: 'Apple', type: 'fruit'},

 {id: 5, name: 'Lemon', type: 'vegetable'},

 {id: 6, name: 'Mint', type: 'fruit'},

 {id: 7, name: 'Mango', type: 'fruit'},

 {id: 8, name: 'Apple', type: 'grain'},

]


function compare(a, b) {

 // Use toLowerCase() to ignore character casing

 const typeA = a.type.toLowerCase();

 const typeB = b.type.toLowerCase();


 let comparison = 0;

 if (typeA > typeB) {

   comparison = 1;

 } else if (typeA < typeB) {

   comparison = -1;

 }

 return comparison;

}


data.sort(compare)

4. 把數組轉成以指定符號分隔的字符串

JS 中有個方法可以做到這一點,就是使用數組中的 .join() 方法,我們可以傳入指定的符號來做數組進行分隔。


const data = ['Mango', 'Apple', 'Banana', 'Peach']


data.join(',');

// return "Mango,Apple,Banana,Peach"

5. 從數組中選擇一個元素

對于此任務,我們有多種方式,一種是使用 forEach 組合 if-else 的方式 ,另一種可以使用filter 方法,但是使用forEach 和filter的缺點是:


在forEach中,我們要額外的遍歷其它不需要元素,并且還要使用 if 語句來提取所需的值。

在filter 方法中,我們有一個簡單的比較操作,但是它將返回的是一個數組,而是我們想要是根據給定條件從數組中獲得單個對象。

為了解決這個問題,我們可以使用 find函數從數組中找到確切的元素并返回該對象,這里我們不需要使用if-else語句來檢查元素是否滿足條件。


const data = [

 {id: 1, name: 'Lemon'},

 {id: 2, name: 'Mint'},

 {id: 3, name: 'Mango'},

 {id: 4, name: 'Apple'}

]


const value = data.find(item => item.name === 'Apple')

// value = {id: 4, name: 'Apple'}

藍藍設計www.newchinaweekly.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務


日歷

鏈接

個人資料

藍藍設計的小編 http://www.newchinaweekly.com

存檔

国产在线视频一区二区| www.youjizz.com亚洲| 欧美一级片在线视频| 国产69精品久久久久久久久久| 伊人久久亚洲综合| 日本色图欧美色图| 国产私人影院| 羞羞网站在线免费观看| 成人综合日日夜夜| 国产真实久久| 成人一级视频在线观看| 午夜伊人狠狠久久| 日韩黄色高清视频| 国产国产精品人在线视| 亚洲国产另类久久久精品极度| 国产成人精品无码播放| 日韩欧美黄色网址| 国产毛片毛片毛片毛片| 免费免费啪视频在线观播放| 99视频精品免费| 国产激情在线免费观看| 国产精品成人久久久| 日韩乱码在线观看| 男人的天堂va免费视频| 在线观看成人影院| 国产在线88av| 亚洲天天影视网| 26uuu精品一区二区在线观看| 午夜久久久影院| 日韩一区二区久久久| av日韩中文字幕| 三级在线免费看| 国产精品99精品| 韩国三级午夜理伦三级三| 亚洲第一成年免费网站| 亚洲aⅴ网站| 一区二区日本视频| 中文字幕一区二区三区不卡在线 | 亚洲欧美日韩综合在线| 国产精品666| 日韩一区中文| 免费欧美在线视频| 日韩欧美中文在线| 午夜欧美不卡精品aaaaa| 亚洲欧洲在线一区| 伊人网在线视频观看| 五月婷婷六月丁香| 二区三区在线| 成人91在线| 国产精品国产三级国产aⅴ原创| 日韩av在线看| 日本一区二区精品| 懂色av蜜桃av| 另类free性欧美护士| 国产美女一区视频| 99精品视频免费观看| 欧美日韩国产色| 国产ts人妖一区二区三区 | 欧美另类黑人巨大videos| 欧美成人三区| 国内一区二区三区| 欧美午夜片欧美片在线观看| 国产999精品| 亚洲色图欧美自拍| 天天干视频在线| 午夜娱乐在线| 成人观看网址| 久久精品免费看| 欧美一级精品在线| 狠狠色综合欧美激情| 色天使在线视频| 国产一级免费看| 一二区成人影院电影网| 久久99九九99精品| 亚洲国产另类久久精品 | 欧美日韩国产成人在线| 黄页网站大全在线观看| 美女露出粉嫩尿囗让男人桶| 国产 日韩 欧美 精品| 浪潮av一区| 日韩精品乱码av一区二区| 91精品国产综合久久香蕉的特点| 欧美另类在线观看| av天堂永久资源网| 少妇一级淫片免费看| 丰满诱人av在线播放| 国内久久婷婷综合| 国产香蕉一区二区三区在线视频 | 日韩免费观看高清| 日本少妇xxxx软件| 91麻豆产精品久久久久久夏晴子| 激情久久一区二区| 欧美日韩少妇| 中文字幕亚洲区| 2020欧美日韩在线视频| 亚洲综合五月天| 国产成人无码av| 国产午夜视频在线观看| 久久精品人人做人人爽电影蜜月| 国产精品久久久久天堂| 欧美又大又粗又长| 亚洲AV无码国产成人久久| 国产娇喘精品一区二区三区图片| 日韩精品一级| 亚洲电影第三页| 欧美在线播放一区二区| 男人天堂视频网| 波多野在线观看| 久久久久久久电影| 成人激情视频网| 久久久久久久久久久久国产| 免费在线超碰| 国内精品伊人久久久久av影院 | 国产特黄级aaaaa片免| 成人eeuss影院在线观看| 欧美jizzhd精品欧美巨大免费| 精品国产一区二区国模嫣然| 无码aⅴ精品一区二区三区浪潮| 四虎免费视频| 精品国产亚洲一区二区三区| 亚洲综合男人的天堂| 欧美lavv| 国产乱码久久久| 免费视频成人| 日韩欧美一区二区三区| 日韩 欧美 自拍| 色妇色综合久久夜夜| 亚洲精品亚洲人成在线观看| 在线不卡的av| 99久久国产宗和精品1上映| 熟年交尾五十路视频在线播放| 日韩精品影视| 亚洲欧美中文字幕在线一区| 久久久久无码国产精品一区李宗瑞 | 日韩精品自拍偷拍| 欧美大尺度做爰床戏| 天堂中文字幕一二区| 亚洲永久在线| 538国产精品一区二区在线 | 久久国产成人精品国产成人亚洲| 国产高清av| 欧美日韩精品一本二本三本| 中文字幕欧美精品日韩中文字幕| 中文人妻一区二区三区| 国产主播福利在线| 成人av一区二区三区| 国产一区不卡在线观看| 手机在线精品视频| 成人激情免费视频| 色久欧美在线视频观看| 日本一级特级毛片视频| 91九色国产在线播放| 亚洲第一狼人社区| 国产妇女馒头高清泬20p多| 狠狠色噜噜狠狠狠| 久久精品理论片| 亚洲va电影大全| 手机在线不卡av| 狠狠色狠狠色综合日日tαg| 高清欧美性猛交xxxx黑人猛交| 永久免费看片在线播放| 成人在线视频区| 亚洲裸体xxxx| 特一级黄色录像| 色婷婷综合久久久中字幕精品久久| 欧美日韩中文字幕一区| 久久无码专区国产精品s| 日本成人在线播放| 亚洲v日本v欧美v久久精品| 亚洲色精品三区二区一区| 日本h片在线看| 国产精品看片你懂得| www.av蜜桃| 日本在线中文电影| 亚洲影视一区二区三区| 91极品女神在线| 一级黄色大片免费观看| 日韩免费视频| 国产福利视频一区| 亚洲人在线观看视频| 精品91在线| 2020国产精品久久精品不卡| 翔田千里精品久久一区二| 久久午夜影视| 欧美日韩999| 在线中文字幕网站| 天天综合亚洲| 成人精品视频在线| 四虎成人精品在永久免费| 麻豆国产一区二区| 四虎一区二区| 又黄又爽无遮挡| 亚洲美女偷拍久久| 男女视频在线观看网站| 午夜激情在线| 精品国产污网站| 国产真人真事毛片| 欧美日韩激情| 亚洲尤物视频网| xfplay资源站色先锋在线观看|