JS Testing Properties 判断属性是否在对象里的方法


Posted in Javascript onOctober 01, 2017

Testing Properties

To check whether an object has a property with a given name. You can do this with the in operator, with the hasOwnProperty() and propertyIsEnumerable() methods,

在JS中判断一个对象是否包含某个属性,可以使用 in,hasOwnProperty() and propertyIsEnumerable()

or simply by querying the property.

或者直接使用查询属性。

in--It returns true if the object has an own property or an inherited property 

用In,当前对象存在或者有继承,就返回true。

hasOwnProperty() --To test whether that object has an own property with the given name. It returns false for inherited properties

用hasOwnProperty() ,只关心本对象,不关心继承来的属性。

propertyIsEnumerable()--The propertyIsEnumerable() refines the hasOwnProperty() test. It returns true only if the named property is an own property and its enumerable attribute is true.

用propertyIsEnumerable() ,和hasOwnProperty() 这个类似,只是要求 属性可枚举。

 Instead of using the in operator  it is often sufficient to simply query the property and use !== to make sure it is not undefined

 o.x !== undefined; // true: o has a property x

替代In的最简单办法就是  query   +    !==Undefined

in can distinguish between properties that do not exist and properties that exist but have been set to undefined.

in 有个好处就是还能区分到底属性的值是undefined还是本身就不存在。

以上这篇JS Testing Properties 判断属性是否在对象里的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
解决jquery的.animate()函数在IE6下的问题
Dec 03 Javascript
jQuery简单实现两级下拉菜单效果代码
Sep 15 Javascript
jquery点击缩略图切换视频播放特效代码分享
Sep 15 Javascript
js格式化时间的简单实例
Nov 27 Javascript
Javascript之深入浅出prototype
Feb 06 Javascript
vue实现导航栏效果(选中状态刷新不消失)
Dec 13 Javascript
基于vue 实现token验证的实例代码
Dec 14 Javascript
vue小白入门教程
Apr 02 Javascript
vue iview实现动态路由和权限验证功能
Apr 17 Javascript
Angular2 自定义表单验证器的实现方法
Dec 14 Javascript
JS数组的高级使用方法示例小结
Mar 14 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
Oct 28 Javascript
基于原生js运动方式关键点的总结(推荐)
Oct 01 #Javascript
vuejs使用递归组件实现树形目录的方法
Sep 30 #Javascript
Easy UI动态树点击文字实现展开关闭功能
Sep 30 #Javascript
js实现轮播图的两种方式(构造函数、面向对象)
Sep 30 #Javascript
React实践之Tree组件的使用方法
Sep 30 #Javascript
JS动态添加的div点击跳转到另一页面实现代码
Sep 30 #Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
Sep 30 #Javascript
You might like
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
PHP set_error_handler()函数使用详解(示例)
2013/11/12 PHP
Web程序工作原理详解
2014/12/25 PHP
自写的利用PDO对mysql数据库增删改查操作类
2018/02/19 PHP
php实现获取近几日、月时间示例
2019/07/06 PHP
查找iframe里元素的方法可传参
2013/09/11 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
jquery实现可自动判断位置的弹出层效果代码
2015/10/12 Javascript
JS实现环形进度条(从0到100%)效果
2016/07/05 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
Bootstrap Table表格一直加载(load)不了数据的快速解决方法
2016/09/17 Javascript
javascript self对象使用详解
2016/10/18 Javascript
Node.js进阶之核心模块https入门
2018/05/23 Javascript
如何用webpack4带你实现一个vue的打包的项目
2018/06/20 Javascript
Javascript 之封装(Package)
2018/09/14 Javascript
Angular脚手架开发的实现步骤
2019/04/09 Javascript
Vue源码学习之关于对Array的数据侦听实现
2019/04/23 Javascript
利用JS代码自动删除稿件的普通弹幕功能
2019/09/20 Javascript
jquery validate 实现动态增加/删除验证规则操作示例
2019/10/28 jQuery
简单了解Vue + ElementUI后台管理模板
2020/04/07 Javascript
Vue打包部署到Nginx时,css样式不生效的解决方式
2020/08/03 Javascript
Array.filter中如何正确使用Async
2020/11/04 Javascript
Python实现设置windows桌面壁纸代码分享
2015/03/28 Python
Python中字符串的格式化方法小结
2016/05/03 Python
解决Django migrate No changes detected 不能创建表的问题
2018/05/27 Python
利用Python求阴影部分的面积实例代码
2018/12/05 Python
千禧酒店及度假村官方网站:Millennium Hotels and Resorts
2019/05/10 全球购物
史上最全面的Java面试题汇总!
2015/02/03 面试题
工程力学专业毕业生求职信
2013/10/06 职场文书
培训自我鉴定
2014/01/31 职场文书
总经理助理岗位职责范本
2014/07/20 职场文书
2015年幼儿园德育工作总结
2015/05/25 职场文书
退货证明模板
2015/06/23 职场文书
财产分割协议书
2016/03/22 职场文书
2019年大学毕业生个人自我鉴定范文大全
2019/03/21 职场文书
Python3 使用pip安装git并获取Yahoo金融数据的操作
2021/04/08 Python