在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的存在性方法介绍

标签:
JavaScript,检查对象property的存在性

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?