1. some( )方法
定义和用法
some() 方法用于检测数组中的元素是否满足某条件
some()方***依次执行数组中的每一个元素:
- 如果有一个元素满足条件,则返回true;剩余元素不会再执行检测
- 如果没有满足条件的元素,则返回false
注意:some 不会对空数组进行检测;some 不会改变原数组
使用案例
/* 检测数据是否含有 19 */
let arr = [3,6,18,19,20]
arr.some(v => v == 19) // true
/* 检测person 是否有 name 为weiwei 的人*/
let persons = [
{
'name' : 'yuyu', age: 17, sex: '男' },
{
'name' : 'weiwei', age: 20, sex: '女' },
]
persons.some( p => p.name == 'weiwei') //true
2. filter( )方法
定义和用法
filter() 方法返回符合条件的元素
使用案例
/* 返回符合元素合集 */
let persons = [
{
'name' : 'yuyu', age: 17, sex: '男' },
{
'name' : 'weiwei', age: 20, sex: '女' },
{
'name' : 'tiantian', age: 20, sex: '女' },
{
'name' : 'liuliu', age: 20, sex: '女' },
]
let womens = persons.filter( p => p.sex == "女")
console.log(womens);
/**
[
{
name: 'weiwei', age: 20, sex: '女' },
{
name: 'tiantian', age: 20, sex: '女' },
{
name: 'liuliu', age: 20, sex: '女' }
]
*/
3. find()方法
定义和用法
find 方法返回符合条件的第一个元素
find 方法为数组中的每一个元素都进行一次条件验证
- 符合查找到第一个符合条件元素, find 返回符合条件元素;没有符合条件元素返回undefined
注意: find 不会对空数组进行执行
注意: find 不会改变原数组
使用案例
/* 返回第一个符合条件元素 */
let persons = [
{
'name' : 'yuyu', age: 17, sex: '男' },
{
'name' : 'weiwei', age: 20, sex: '女' },
{
'name' : 'tiantian', age: 20, sex: '女' },
{
'name' : 'liuliu', age: 20, sex: '女' },
]
let womens = persons.find( p => p.sex == "女")
let animal = persons.find( p => p.sex == '动物')
console.log(womens);
/**
{
name: 'weiwei', age: 20, sex: '女' }
*/
console.log(animal); //undefined
4. for…in 和 for…of遍历方法
for…in 语句用于对数组或者对象的属性进行循环操作
let arr = [1,2,3,4,5,6]
let obj = [
{
name: "aaa", age: 17 },
{
name: "bbb", age: 14}
]
// for..in
for (const item in arr) {
console.log(item);
//0 1 2 3 4 5
}
for (const item in obj) {
console.log(item);
// 0 1
}
// for..of
for (const item of arr) {
console.log(item); // 1 2 3 4 5 6
}
for(const item of obj) {
console.log(item); // {
name: 'aaa', age: 17} {
name: 'bbb',age: 14}
}