undersacore,判断数据是否存在

本文介绍了JavaScript中五个常用函数的功能及应用场景:has用于检查对象键的存在性;indexOf与contains用于数组元素的查找;find用于快速定位首个符合条件的数组元素;where用于筛选对象数组中符合特定属性的项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1.has_.has(object, key) 

对象是否包含给定的键吗?等同于object.hasOwnProperty(key),但是使用hasOwnProperty 函数的一个安全引用,以防意外覆盖

 

 
  
_.has({a: 1, b: 2, c: 3}, "b");
=> true
 
 
 

 

注:has是判断用于对象的键是否存在

 

2.indexOf_.indexOf(array, value, [isSorted]) 

返回value在该 array 中的索引值,如果value不存在 array中就返回-1。使用原生的indexOf 函数,除非它失效。如果您正在使用一个大数组,你知道数组已经排序,传递trueisSorted将更快的用二进制搜索..,或者,传递一个数字作为第三个参数,为了在给定的索引的数组中寻找第一个匹配值。

 

_.indexOf([1, 2, 3], 2);
=> 1

 

 

索引位置

 

还可以用于:判断数组中是否过存在元素a

 

Var list=[1,12,4,5,1,2,]

 

If(list.indexOf(‘10’)==-1){  //if中判断语句为:10不在list数组中

 

Console.log(‘ture’)

 

}

 

结果为:ture;

 

3.contains_.contains(list, value) 别名: include 

如果list包含指定的value则返回true(注:使用===检测)。如果list 是数组,内部使用indexOf

 

_.contains([1, 2, 3], 3);
=> true

 

 

 

Contains,也同为判断数组中是否存在元素;

 

4.find_.find(list, predicate, [context]) 别名: detect 

list中逐项查找,返回第一个通过predicate迭代函数真值检测的元素值,如果没有值传递给测试迭代器将返回undefined如果找到匹配的元素,函数将立即返回,不会遍历整个list

 
var aray=[1,2,4,5,6,3,8];
_.find(array,function(num){return num%2==0}
=>2
遍历数组,只会返回条件成立的第一个数据。 
而,filter则会返回全部满足条件成立的数据,reject 与filter相反。
 
  

 

5.where_.where(list, properties) 遍历list中的每一个值,返回一个数组,这个数组包含properties所列出的属性的所有的 键 - 值对。

_.where(listOfPlays, {author: "Shakespeare", year: 1611});
=> [{title: "Cymbeline", author: "Shakespeare", year: 1611},
    {title: "The Tempest", author: "Shakespeare", year: 1611}]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值