JavaScript中检查对象property的存在性方法介绍
在JavaScript中,可以用四种方法来检查某个对象o是否拥有property x:
1.“x” in o。in操作符可用于检查对象o中是否有x这个property。x可以是对象自身的(Own Property),也可以是从原型对象中继承而来的;x可以是enumerable的property,也可以是非enumerable的property。
2.o.x。可以通过访问o.x语句,判断其结果是否为undefined来确认x是否存在,其作用范围与in操作符相同。与in操作符不同的是:如果在对象o中显式声明某个property x的值为undefined,那么”x” in o操作结果将为true,而o.x结果则为undefined。
3.hasOwnProperty()。o.hasOwnProperty(“x”)操作用于判断o对象自身是否拥有x property,o从原型对象处继承而来的property将不在考虑之列。hasOwnProperty()操作既检查enumerable的property,也检查非enumerable的property。
4.propertyIsEnumerable()。o.propertyIsEnumerable(“x”)操作仅检查o对象自身拥有的enumerable property,该操作是hasOwnProperty()的一个子集。
综合上述信息,总结成图如下:
相关推荐
-
JavaScript中遍历对象的property的3种方法介绍
在JavaScript中,可以用三种方法来遍历对象的property: 1.for/in.可以使用for/in语句遍历对象自身的property(Own Property)及其从原型对象处继承的property,只有enumerable的property才会被遍历到. 2.Object.keys().可以将对象作为参数传入Object.keys(),Object.keys()语句将返回由所有property名称字符串所组成的数组.Object.keys()语句仅返回对象自身的(Own Prope
-
JavaScript中对象property的删除方法介绍
JavaScript中,可以使用delete操作符来删除对象中的property: 复制代码 代码如下: var t = {a:42, b:26}; console.log(t);//Object {a=42, b=26} delete t.a; console.log(t);//Object {b=26} 这种property删除操作的局限性在于:delete操作符只能删除对象自身所有的property,无法删除其从prototype对象处继承而来的property.如果想删除prototyp
-
JavaScript中的对象的extensible属性介绍
JavaScript中,对象的extensible属性用于表示是否允许在对象中动态添加新的property.ECMAScript 3标准中,所有的对象都是extensible的.ECMAScript 5标准中,所有的对象默认仍是extensible的,但可以通过设定来改变这一属性. 查询一个对象是否是extensible的,可以使用Object.isExtensible()语句: 复制代码 代码如下: var o = {x:1}; console.log(Object.isExtensible(
-
JavaScript中检查对象property的存在性方法介绍
在JavaScript中,可以用四种方法来检查某个对象o是否拥有property x: 1."x" in o.in操作符可用于检查对象o中是否有x这个property.x可以是对象自身的(Own Property),也可以是从原型对象中继承而来的:x可以是enumerable的property,也可以是非enumerable的property. 2.o.x.可以通过访问o.x语句,判断其结果是否为undefined来确认x是否存在,其作用范围与in操作符相同.与in操作符不同的是:如果
-
JavaScript中数组对象的那些自带方法介绍
/** * 本文纯粹是梳理一下目前W3C标准中Array对象的自带Method. * 全文没啥营养,不过最后性能测试的部分,倒是抛出了一些疑问. */ 赋值方法 (Mutator methods) 这些方法直接修改数组自身 pop 和 push Array.pop(); // 删除数组最后一个元素,返回被删除的元素 Array.push(element1, ..., elementN); // 在数组尾部插入1-N个元素,返回操作后数组的length 通过这 pop 和 push ,就能把数组模
-
JavaScript中判断对象类型的几种方法总结
我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一个说明运算数类型的字符串.如:"number","string","boolean","object","function","undefined"(可用于判断变量是否存在). 但 type
-
JavaScript中Array 对象相关的几个方法
push 方法将新元素添加到一个数组中,并返回数组的新长度值. arrayObj.push([item1 [item2 [. . . [itemN ]]]])参数arrayObj 必选项.一个 Array 对象. item, item2,. . . itemN 可选项.该 Array 的新元素. 说明push 方法将以新元素出现的顺序添加这些元素.如果参数之一为数组,那么该数组将作为单个元素添加到数组中.如果要合并两个或多个数组中的元素,请使用 concat 方法. 示例 <script typ
-
PowerShell中Get-Date对象的常用属性和方法介绍
本文介绍PowerShell中使用Get-Date得到的日期对象的属性和方法,利用好这些对象和方法,可以极大的增强我们开发的灵活性. 使用Get-Date可以获取到一个时间对象,这个时间对象,可不是仅仅用来输出当前时间这么简单.我们来看看它的属性和方法吧,不看白不看. 要想看一个对象的成员(即对象的属性和方法),可以使用管道符,再加上Get-Member这个cmdlet.很方便滴! 复制代码 代码如下: PS C:\Users\zhanghong> Get-Date | Get-Member T
-
JavaScript中Math对象相关知识全解
目录 前言 常用属性 常用方法 实例参考 总结 前言 除了简单的加减乘除,在某些长和开发者需要进行更为复杂的数学运算.JavaScript的Math对象提供了一系列属性和方法,能够满足大多数场合的需求. Math对象是JavaScript的全局对象,不需要由函数进行创建.有且只有一个Math对象. 常用属性 属性 说明 Math.E 返回值e(自然对数的底数) Math.LN10 返回10的自然对数 Math.LN2 返回2的自然对数 Math.LOG2E 返回以2为底的e的对数 Math.LO
-
javascript中json对象json数组json字符串互转及取值方法
今天用到了json数组和json对象和json类型字符串之间互转及取值,记录一下: 1.json类型的字符串转换为json对象及取值 var jsonString = '{"bar":"property","baz":3}'; var jsObject = JSON.parse(jsonString); //转换为json对象 alert(jsObject.bar); //取json中的值 2.json对象转为json类型的字符串 var js
-
JavaScript中Math对象使用说明
JavaScript中Math对象是是一个固有对象,提供基本数学函数和常数.使用方法: Math.[{property | method}] 其中property是必选项.Math 对象的一个属性名. method是必选项.Math.对象的一个方法名. JavaScript中Math对象不能用 new 运算符创建,如果试图这样做则给出错误.该对象在装载脚本引擎时由该引擎创建.其所有方法和属性在脚本中总是可用.
-
Javascript中判断对象是否为空
发现了一个巧妙的实现: 需要检查一个对象(Object)是否为空,即不包含任何元素.Javascript 中的对象就是一个字典,其中包含了一系列的键值对(Key Value Pair).检查一个对象是否为空,等价于检查对象中有没有键值对.写成代码,形如: if (isEmptyObject(obj)) { // obj is empty } else { // not empty } 至于 isEmptyObject 的实现,jQuery 中有一个很有想法的方式,请看代码: function i
随机推荐
- 用javascript实现截取字符串包含中文处理的函数
- Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
- jQuery实现table中两列CheckBox只能选中一个的示例
- javascript 硬盘序列号+其它硬件信息
- 浅谈七种常见的Hadoop和Spark项目案例
- Windows系统下nodejs、npm、express的下载和安装教程详解
- 使用python实现strcmp函数功能示例
- PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
- 微信公众号-获取用户信息(网页授权获取)实现步骤
- 在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
- Shell脚本实现根据端口号kill相应进程功能
- 修改js confirm alert 提示框文字的简单实例
- DB.ASP 用Javascript写ASP很灵活很好用很easy
- odbcasvc.exe导致CPU使用100%问题的解决办法
- ASP.NET中数据库操作初步
- mysqld-nt: Out of memory (Needed 1677720 bytes)解决方法
- 使用RN Animated做一个“添加购物车”动画的方法
- OpenCV使用鼠标响应裁剪图像
- Flutter进阶之实现动画效果(八)
- 实例测试MySQL的enum类型