如何使用js查找數(shù)組中符合條件的元素
js查找數(shù)組中符合條件元素的幾種方法
一、利用for循環(huán)進(jìn)行查找
let arr = [ {name: 'zhangsan', age: 18}, {name: 'lisi', age: 17}, {name: 'xiaoming', age: 18}, ], result = [] for (let item of arr){ if(item.age === 18){ result.push(item); } } console.log(result);// [{name: 'zhangsan', age: 18},{name: 'xiaoming', age: 18}]
二、filter() 方法
注意:
filter() 方法創(chuàng)建一個(gè)新的數(shù)組,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素。
filter() 不會(huì)對空數(shù)組進(jìn)行檢測。
filter() 不會(huì)改變原始數(shù)組。
let arr = [ {name: 'zhangsan', age: 18}, {name: 'lisi', age: 17}, {name: 'xiaoming', age: 18}, ]; let result = arr.filter(item=>item.age === 18) console.log(result);// [{name: 'zhangsan', age: 18},{name: 'xiaoming', age: 18}]
三、find()方法
注意:
find()方法只返回?cái)?shù)組中滿足條件的第一個(gè)元素,并非所有元素
當(dāng)數(shù)組中的元素在條件返回 true 時(shí), find() 返回符合條件的元素,之后的值不會(huì)再調(diào)用執(zhí)行函數(shù)。
如果沒有符合條件的元素返回 undefined
find() 對于空數(shù)組,函數(shù)是不會(huì)執(zhí)行的。
find() 并沒有改變數(shù)組的原始值。
let arr = [ {name: 'zhangsan', age: 18}, {name: 'lisi', age: 17}, {name: 'xiaoming', age: 18}, ]; let result = arr.find(item=>item.age === 18) console.log(result);// {name: 'zhangsan', age: 18}
附:JavaScript查找一個(gè)數(shù)組中符合某個(gè)條件的值,并將符合條件的值存入新的數(shù)組
1. 利用find函數(shù)和es6箭頭函數(shù),下面方法取到數(shù)組中滿足條件的第一個(gè)元素;
var newArray = {};//新對象 var array = [ {name:'aiai',age:18}, {name:'sisi',age:18}, {name:'lulu',age:18}, {name:'sisi',age:19} ]; //查找符合條件值并存入新數(shù)組 newArrar = this.array.find((item) => { if(item.name === 'sisi'){ return item } }) //此時(shí) newArray = {name:'sisi',age:18}
2. 查找符合條件的所有元素
var newArray = [];//新數(shù)組 var j = 0; var array = [ {name:'aiai',age:18}, {name:'sisi',age:18}, {name:'lulu',age:18}, {name:'sisi',age:19} ]; //目標(biāo)數(shù)組 //查找符合條件值并存入新數(shù)組 for(let i in array){ if(array[i].name == 'sisi'){ newArray[j++] = array[i] } } //此時(shí) newArray = [{name:'sisi',age:18},{name:'sisi',age:19}]
總結(jié)
到此這篇關(guān)于如何使用js查找數(shù)組中符合條件的元素的文章就介紹到這了,更多相關(guān)js查找數(shù)組符合條件的元素內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
javascript漢字拼音互轉(zhuǎn)的簡單實(shí)例
下面小編就為大家?guī)硪黄猨avascript漢字拼音互轉(zhuǎn)的簡單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10javascript幀動(dòng)畫(實(shí)例講解)
下面小編就為大家?guī)硪黄猨avascript幀動(dòng)畫(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09iOS和Android用同一個(gè)二維碼實(shí)現(xiàn)跳轉(zhuǎn)下載鏈接的方法
這篇文章給大家分享的是iOS和Android掃描同一個(gè)二維碼,分別跳到各自的下載鏈接的實(shí)現(xiàn)方法,文中給出了實(shí)例代碼,有需要的朋友們可以參考借鑒。2016-09-09javascript實(shí)現(xiàn)簡單小鋼琴有聲彈奏效果
用HTML5+javascript實(shí)現(xiàn)的小鋼琴,按下鋼琴鍵上的相應(yīng)字母用或用鼠標(biāo)點(diǎn)擊鋼琴鍵發(fā)聲,javascript代碼包含了對鼠標(biāo)按下、移動(dòng)和松開,以及鍵盤按下的事件監(jiān)聽2024-02-02