判断JS对象是否拥有某种属性的两种方式


Posted in Javascript onDecember 02, 2013

两种方式,但稍有区别

1,in 运算符

var obj = {name:'jack'}; 
alert('name' in obj); // --> true 
alert('toString' in obj); // --> true

可看到无论是name,还是原形链上的toString,都能检测到返回true。

2,hasOwnProperty 方法

var obj = {name:'jack'}; 
obj.hasOwnProperty('name'); // --> true 
obj.hasOwnProperty('toString'); // --> false

原型链上继承过来的属性无法通过hasOwnProperty检测到,返回false。

需注意的是,虽然in能检测到原型链的属性,但for in通常却不行。

当然重写原型后for in在IE9/Firefox/Safari/Chrome/Opera下是可见的。见:for in的缺陷

Javascript 相关文章推荐
一个页面元素appendchild追加到另一个页面元素的问题
Jan 27 Javascript
在javascript中执行任意html代码的方法示例解读
Dec 25 Javascript
浅谈javascript对象模型和function对象
Dec 26 Javascript
jQuery常用知识点总结以及平时封装常用函数
Feb 23 Javascript
JavaScript重载函数实例剖析
May 13 Javascript
jQuery前端开发35个小技巧
May 24 Javascript
jquery 标签 隔若干行加空白或者加虚线的方法
Dec 07 Javascript
EasyUI学习之Combobox下拉列表(1)
Dec 29 Javascript
javascript判断回文数详解及实现代码
Feb 03 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
Mar 21 Javascript
原生JS实现的简单轮播图功能【适合新手】
Aug 17 Javascript
在Vue中使用Echarts可视化库的完整步骤记录
Nov 18 Vue.js
关于js中for in的缺陷浅析
Dec 02 #Javascript
js验证整数加保留小数点的简单实例
Dec 02 #Javascript
ExtJs中gridpanel分组后组名排序实例代码
Dec 02 #Javascript
javascript操作html控件实例(javascript添加html)
Dec 02 #Javascript
解析Javascript中大括号“{}”的多义性
Dec 02 #Javascript
解析JavaScript中点号“.”的多义性
Dec 02 #Javascript
解析JavaScript中的不可见数据类型
Dec 02 #Javascript
You might like
最贵的咖啡是怎么产生的,它的风味怎么样?
2021/03/04 新手入门
用缓存实现静态页面的测试
2006/12/06 PHP
PHP冒泡排序算法代码详细解读
2011/07/17 PHP
PHP中使用curl入门教程
2015/07/02 PHP
深入理解Javascript闭包 新手版
2010/12/28 Javascript
一行代码告别document.getElementById
2012/06/01 Javascript
JS代码判断IE6,IE7,IE8,IE9的函数代码
2013/08/02 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
2015/10/08 Javascript
js判断当前页面在移动设备还是在PC端中打开
2016/01/06 Javascript
JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)
2016/08/02 Javascript
利用原生JS自动生成文章标题树的实例
2016/08/22 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
面试常见的js算法题
2017/03/23 Javascript
javascript 中关于array的常用方法详解
2017/05/05 Javascript
Iscrool下拉刷新功能实现方法(推荐)
2017/06/26 Javascript
微信小程序实现倒计时60s获取验证码
2020/04/17 Javascript
JS生成随机打乱数组的方法示例
2017/12/23 Javascript
nuxt 实现在其它js文件中使用store的方式
2020/11/05 Javascript
[14:51]DOTA2 HEROS教学视频教你分分钟做大人-卓尔游侠
2014/06/13 DOTA
使用Python的Treq on Twisted来进行HTTP压力测试
2015/04/16 Python
python+Django+apache的配置方法详解
2016/06/01 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
2016/06/07 Python
python3 assert 断言的使用详解 (区别于python2)
2019/11/27 Python
CK加拿大官网:Calvin Klein加拿大
2020/03/14 全球购物
通信工程毕业生自荐信
2013/11/01 职场文书
语文教学感言
2014/02/06 职场文书
《中华少年》教学反思
2014/02/15 职场文书
2014两会学习心得:时代的发展
2014/03/17 职场文书
可口可乐广告词
2014/03/20 职场文书
募捐倡议书
2014/04/14 职场文书
五水共治一句话承诺
2014/05/30 职场文书
微笑服务标语
2014/06/24 职场文书
2014迎国庆演讲稿
2014/09/19 职场文书
神龙架导游词
2015/02/11 职场文书
家庭聚会祝酒词
2015/08/11 职场文书
2016年幼儿园庆六一开幕词
2016/03/04 职场文书