js判断数组,对象是否存在某一未知元素
1.对象
var obj = {
aa:'1111',
bb:'2222',
cc: '3333'
};
var str='aa';
if(str in obj){
console.log(obj[str]);
}
但是对于obj内的原型对象,也会查找到:
var obj = {
aa:'1111',
bb:'2222',
cc: '3333'
};
var str='toString';
if(str in obj){
console.log(obj[str]);
}
所以,使用hasOwnProperty()更准确:
var obj = {
aa: '1111',
bb: '2222',
cc: '3333'
};
var str = 'aa';
if (obj.hasOwnProperty(str)) {
console.log(111);
}else{
console.log(222);
}
2.数组
如何判断数组内是存在某一元素?主流,或者大部分都会想到循环遍历,其实不循环也可以,通过数组转换查找字符串:
var test = ['a', 3455, -1]; function isInArray(arr, val) {
var testStr = arr.join(',');
return testStr.indexOf(val) != -1
};
alert(isInArray(test, 'a'));
通过While循环:
Array.prototype.contains = function(obj) {
var len = this.length;
while (len--) {
if (this[len] === obj) {
return true
}
}
return false;
};
for循环:
Array.prototype.contains = function(obj) {
var len = this.length;
for (var i = 0; i < len; i++) {
if (this[i] === obj) {
return true
}
}
return false;
}
js判断数组,对象是否存在某一未知元素的更多相关文章
- js 判断数组
这么基础的东西实在不应该再记录了,不过嘛,温故知新~就先从数据类型开始吧 js六大数据类型:number.string.object.Boolean.null.undefined string: 由单 ...
- js 判断数组包含某值的方法 和 javascript数组扩展indexOf()方法
var questionId = []; var anSwerIdValue = []; ////javascript数组扩展indexOf()方法 Array.prototype.indexOf ...
- [记录] js判断数组key是否存在
数组中判断key是否存在 可以通过arrayObject.hasOwnProperty(key)来进行判断数组key是否存在,返回的是boolean值,如果存在就返回true,不存在就返回false ...
- js对数组对象的操作以及方法的使用
js对数组对象的操作以及方法的使用 如何声明创建一个数组对象: var arr = new Array(); 或者 var arr = []; 如何移除所有数组中数据? arrayJson.dataL ...
- JQ 数组动态添值,对象动态添值,判断数组/对象是否为空
1.数组动态添值 首先声明一个空数组:var data = new Array(); 向数组中添值 :data.push('添加的值'); 示例:
- js判断数组中是否包含某个元素
参考:http://www.runoob.com/jquery/misc-inarray.html js判断数组中是否包含某个元素 $.inArray( value, array [, fromInd ...
- Js判断数组中是否存在某个元素
Js判断数组中是否存在某个元素 方法一:indexOf(item,start); Item:要查找的值:start:可选的整数参数,缺省则从起始位子开始查找. indexOf();返回元素在数组中的位 ...
- js判断数组(数组对象)中是否存在指定的值,如果存在就删除
数组中是否存在指定值,存在就删除 var str = ["a", "b", "c"]; var index = str.indexOf(&q ...
- js 判断数组的值是否有重复
方法一: var s = ary.join(",")+","; for(var i=0;i<ary.length;i++) { if(s.replace( ...
随机推荐
- 10:Python2与Python3比较
1.print 函数 1. print语句没有了,取而代之的是print()函数. Python 2.6与Python 2.7部分地支持这种形式的print语法. 2.Unicode 1. 在pyt ...
- STM32.printf
printf("\r\n this is a usart printf demo \r\n"); Use Micro LIB 需要勾选这个库 将串口定义成 printf 函数 #i ...
- java使用itex读取pdf,并搜索关键字,为其盖章
导读:近期要做一个根据关键字定位pdf的盖章位置的相关需求,其中关键字可配置多个(包含pdf文档中可能不存在的关键字),当页面显示盖章完成时,打开pdf显示已经损坏. 排查后发现,当itext搜索的关 ...
- Django组件(一) Django之分页器
Django的分页器(paginator)简介 在页面显示分页数据,需要用到Django分页器组件 from django.core.paginator import Paginator Pagina ...
- 简谈高通Trustzone的实现【转】
本文转载自:https://blog.csdn.net/hovan/article/details/42520879 从trust zone之我见知道,支持trustzone的芯片会跑在两个世界. 普 ...
- 安装Qt5.9
目前,作为一个重量级编程开发工具,Qt 已经正式发布了 5.9.0 版本.相比之前的 5.7,5.8 版本,新版本在性能和功能上有了大幅改善和提高,并由此获得了官方的明确表态:这将是继 5.6 之后的 ...
- luogu3935 Calculating
标题也许叫整除分块吧 求\(1\)到\(n\)因数的个数\(\sum_{i=1}^n(\sum_{d|n}1)\) 范围\(1e14\)时限3s \(n\sqrt{n}\)的暴力铁定gg 分开考虑 \ ...
- 关于ActiveMQ、RocketMQ、RabbitMQ、Kafka一些总结和区别
这是一篇分享文 转自:http://www.cnblogs.com/williamjie/p/9481780.html 尊重原作,谢谢 消息队列 为什么写这篇文章? 博主有两位朋友分别是小A和小B: ...
- CodeForces 1029E div3
题目链接 第一道场上自己做出来的E题...虽然是div3,而且是原题... 当时做完ABC,D题没有思路就去怼E了,然后发现貌似原题? 事实上就是原题... 给个原题链接... [HNOI2003]消 ...
- linux中C语言发送广播报文
2. 指令的解决方法: oute add -net 255.255.255.255 netmask 255.255.255.255 dev eth0 metric 1 或者 route add -ho ...