JS对象是否拥有某属性如何判断

 更新时间:2017年02月03日 15:07:22   投稿:lqh  
这篇文章主要介绍了JS对象是否拥有某属性如何判断的相关资料,需要的朋友可以参考下

JS对象是否拥有某属性

两种方式,但稍有区别

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的缺陷

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Knockout结合Bootstrap创建动态UI实现产品列表管理

    Knockout结合Bootstrap创建动态UI实现产品列表管理

    这篇文章主要为大家详细介绍了Knockout结合Bootstrap创建动态UI实现产品列表管理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 微信小程序分包操作实战指南

    微信小程序分包操作实战指南

    分包指的是把一个完整的小程序项目,按照需求划分为不同的子包, 在构建时打包成不同的分包,用户在使用时按需进行加载,下面这篇文章主要给大家介绍了关于微信小程序分包操作的相关资料,需要的朋友可以参考下
    2022-10-10
  • 详解axios是如何处理异常的

    详解axios是如何处理异常的

    本文我们将讨论 axios 中是如何处理异常的,在此之前,我们先了解以下 axios 中各种类型的异常,文中通过代码示例讲解的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2024-05-05
  • JS与jQ读取xml文件的方法

    JS与jQ读取xml文件的方法

    本文通过代码实例给大家讲解js读取xml文件及jq读取xml文件的方法,对本文感兴趣的朋友一起学习吧
    2015-12-12
  • Typescript井字棋的项目实现

    Typescript井字棋的项目实现

    本文主要介绍了Typescript井字棋的项目实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • JS脚本实现网页自动秒杀点击

    JS脚本实现网页自动秒杀点击

    本篇文章主要教给大家如何用JS写一些商城中秒杀等自动点击功能,有这方面需要的朋友赶快学习下思路吧。
    2018-01-01
  • 自定义百度分享的分享按钮

    自定义百度分享的分享按钮

    这篇文章主要介绍了自定义百度分享的分享按钮的相关资料,需要的朋友可以参考下
    2015-03-03
  • 详解JS变量存储深拷贝和浅拷贝

    详解JS变量存储深拷贝和浅拷贝

    这篇文章主要介绍了JS变量存储深拷贝和浅拷贝,想深入了解JS的同学,可以参考下
    2021-05-05
  • 使用JS中的exec()方法构造正则表达式验证

    使用JS中的exec()方法构造正则表达式验证

    这篇文章主要介绍了使用JS中的exec()方法构造正则表达式验证的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-08-08
  • JS组件福利大放送 推荐12款好用的Bootstrap组件

    JS组件福利大放送 推荐12款好用的Bootstrap组件

    Bootstrap组件福利大放送,这篇文章主要为大家推荐了几款好用的Bootstrap组件,感兴趣的小伙伴们可以参考一下
    2016-07-07

最新评论