判断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 相关文章推荐
jQuery获取动态生成的元素示例
Jun 15 Javascript
JavaScript 学习笔记之基础中的基础
Jan 13 Javascript
JavaScript模板引擎Template.js使用详解
Dec 15 Javascript
easyui-edatagrid.js实现回车键结束编辑功能的实例
Apr 12 Javascript
parabola.js抛物线与加入购物车效果的示例代码
Oct 25 Javascript
Webpack打包字体font-awesome的方法示例
Apr 26 Javascript
如何使node也支持从url加载一个module详解
Jun 05 Javascript
自定义Vue中的v-module双向绑定的实现
Apr 17 Javascript
vue组件化中slot的基本使用方法
May 01 Javascript
Vue实现根据hash高亮选项卡
May 27 Javascript
9个JavaScript日常开发小技巧
Oct 06 Javascript
vue中this.$http.post()跨域和请求参数丢失的解决
Apr 08 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
PIGCMS 如何关闭聊天机器人
2015/02/12 PHP
php的PDO事务处理机制实例分析
2017/02/16 PHP
使用laravel和ECharts实现折线图效果的例子
2019/10/09 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
javascript静态的url如何传递
2007/05/03 Javascript
jquery图片上下tab切换效果
2011/03/18 Javascript
基于jquery实现点击左右按钮图片横向滚动
2013/04/11 Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
2013/05/08 Javascript
jQuery Masonry瀑布流插件使用详解
2014/11/17 Javascript
jquery手风琴特效插件
2015/02/04 Javascript
逐一介绍Jquery data()、Jquery stop()、jquery delay()函数(详)
2015/11/04 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
jQuery插件autocomplete使用详解
2017/02/04 Javascript
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
vue.js2.0点击获取自己的属性和jquery方法
2018/02/23 jQuery
angularjs通过过滤器返回超链接的方法
2018/10/26 Javascript
分享一个vue项目“脚手架”项目的实现步骤
2019/05/26 Javascript
跟老齐学Python之大话题小函数(2)
2014/10/10 Python
Python利用Nagios增加微信报警通知的功能
2016/02/18 Python
Python编程之event对象的用法实例分析
2017/03/23 Python
Python编程实现二叉树及七种遍历方法详解
2017/06/02 Python
python使用webdriver爬取微信公众号
2018/08/31 Python
对Python 3.5拼接列表的新语法详解
2018/11/08 Python
医学院学生求职简历的自我评价
2013/10/24 职场文书
优秀毕业生自荐信范文
2014/01/01 职场文书
工作人员思想汇报
2014/01/09 职场文书
大学生演讲稿范文
2014/01/11 职场文书
学生操行评语大全
2014/04/24 职场文书
小学生竞选班长演讲稿
2014/04/24 职场文书
知识竞赛拉拉队口号
2014/06/16 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
运动会报道稿大全
2015/07/23 职场文书
小学生红领巾广播稿
2015/08/19 职场文书
python3美化表格数据输出结果的实现代码
2021/04/14 Python
MySQL中B树索引和B+树索引的区别详解
2022/03/03 MySQL
分析SQL窗口函数之排名窗口函数
2022/04/21 Oracle