es6數(shù)組用法總結(jié)

1. find(callback) find查詢出第一個(gè)符合條件的結(jié)果就會(huì)返回碴倾,返回是一個(gè)對(duì)象

1.基本查詢
    const arrmock=[{name:'1',age:2},{name:'2'},{name:'1',age:'3'}]
    const findname=arrmock.find(o=>o.name==='1')
    console.log(findname); // { name: '1', age: 2 } 查詢出第一個(gè)符合條件不在往后查詢
2.嵌套查詢,查詢某一個(gè)子元素對(duì)應(yīng)的父元素的值(已知某個(gè)子元素中的key值穆咐,查詢父元素耕陷,再取出父元素key值)

const menuSlioder = [
  {
    key: '123123123',
    title: '賬戶管理',
    children: [
      {
        key: 'abcd',
        title: '錢包賬戶',
      },
    ],
  },
  {
    key: 'sfwfsdf',
    title: '賬戶管理',
    children: [
      {
        key: 'abc',
        title: '錢包賬戶',
      },
      {
        key: 'abcde',
        title: '賬戶流水明細(xì)',
      },
    ],
  },
];

const as = menuSlioder.find((item) => {
  return Boolean(item.children.find((o) => o.key === 'abcd'));
});
// 等價(jià)于  some的用法依據(jù)判斷條件,數(shù)組的元素是否有一個(gè)滿足辙喂,若有一個(gè)滿足則返回ture捶牢,否則返回false
// const as = menuSlioder.find((item) => {
//   return item.children.some((o) => o.key === 'abcd');
// });
console.log(as); 
// {
//   key: '123123123',
//   title: '賬戶管理',
//   children: [
//     {
//       key: 'abcd',
//       title: '錢包賬戶',
//     },
//   ],
// }

2.filter(callback) 過濾數(shù)組,返回一個(gè)滿足要求的數(shù)組加派,callback是一個(gè)條件語句

1.基本用法
const users = [
  { 'user': 'barney', 'age': 36, 'active': true },
  { 'user': 'fred',   'age': 40, 'active': false },
  { 'user': 'ared',   'age': 24, 'active': false },
  { 'user': 'ered',   'age': 80, 'active': false },
  { 'abc': 'ered',   'age': 80, 'active': false }
]
// 篩選 age等于40或者age等于24的 數(shù)組對(duì)象
const filtered = users.filter(n => n.age===40 || n.age===24)
console.log('filter后的鍵名', filtered)   // => [{user: "fred", age: 40, active: false}叫确,{user: "ared", age: 24, active: false}]
const  ac=users.filter(n => n.age===100)
console.log(ac);  // []

2.數(shù)組中的空字符串刪除
const spread = ['A', '', 'B', null, undefined, 'C', '  ']
const filtered = spread.filter((item) => {
  return item && item.trim()
})
console.log('數(shù)組中的空字符串刪掉', filtered) // => ["A", "B", "C"]

3.filter+map寫法用于剔除某些元素的騷操作
const arr = [
  {
    gender: 'man',
    name: 'john',
  },
  {
    gender: 'woman',
    name: 'mark',
  },
  {
    gender: 'man',
    name: 'jerry',
  },
];
// filter : 有條件的篩選,返回條件為true的數(shù)組
// 篩選出性別為男性的名字集合
const newArr = arr
  .filter((n) => n.gender === 'man')
  .map((item) => {
    return {
      name: item.name,
    };
  });
console.log('男性名字集合', newArr); // => [{name: 'john'}, {name: 'jerry'}]

4.在案例find中使用filter
const as = menuSlioder.filter((pro) => pro.children.some((o) => o.key === 'abcde'))
// => [ { key: 'sfwfsdf', title: '賬戶管理', children: [ [Object], [Object] ] } ]
menuSlioder.filter((pro) => pro.children.some((o) => o.key === 'abcde')).map((item)=>console.log(item))
// {
//   key: 'sfwfsdf',
//   title: '賬戶管理',
//   children: [ { key: 'abc', title: '錢包賬戶' }, { key: 'abcde', title: '賬戶流水明細(xì)' } ]
// }

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末芍锦,一起剝皮案震驚了整個(gè)濱河市竹勉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌娄琉,老刑警劉巖次乓,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異孽水,居然都是意外死亡票腰,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門女气,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杏慰,“玉大人,你說我怎么就攤上這事炼鞠≡道模” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵谒主,是天一觀的道長(zhǎng)朝扼。 經(jīng)常有香客問我,道長(zhǎng)霎肯,這世上最難降的妖魔是什么擎颖? 我笑而不...
    開封第一講書人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任榛斯,我火速辦了婚禮,結(jié)果婚禮上搂捧,老公的妹妹穿的比我還像新娘驮俗。我一直安慰自己,他們只是感情好允跑,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開白布意述。 她就那樣靜靜地躺著,像睡著了一般吮蛹。 火紅的嫁衣襯著肌膚如雪荤崇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,462評(píng)論 1 302
  • 那天潮针,我揣著相機(jī)與錄音术荤,去河邊找鬼。 笑死每篷,一個(gè)胖子當(dāng)著我的面吹牛瓣戚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播焦读,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼子库,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了矗晃?” 一聲冷哼從身側(cè)響起仑嗅,我...
    開封第一講書人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎张症,沒想到半個(gè)月后仓技,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡俗他,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年脖捻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兆衅。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡地沮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出羡亩,到底是詐尸還是另有隱情摩疑,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布夕春,位于F島的核電站未荒,受9級(jí)特大地震影響专挪,放射性物質(zhì)發(fā)生泄漏及志。R本人自食惡果不足惜片排,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望速侈。 院中可真熱鬧率寡,春花似錦、人聲如沸倚搬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽每界。三九已至捅僵,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間眨层,已是汗流浹背庙楚。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留趴樱,地道東北人馒闷。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像叁征,于是被迫代替她去往敵國和親纳账。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354