首页 > web前端 > js教程 > 正文

如何在 JavaScript 对象中使用变量属性名称检查属性是否存在?

Barbara Streisand
发布: 2024-11-01 11:07:02
原创
153 人浏览过

How to Check for Property Existence Using a Variable Property Name in JavaScript Objects?

如何使用属性名称变量有效检查对象属性是否存在

使用 JavaScript 对象时,确定特定属性是否存在至关重要。但是,如果您需要利用变量来保存目标属性名称怎么办?

在提供的示例中:

<code class="js">var myObj;
myObj.prop = "exists";
var myProp = "p"+"r"+"o"+"p";

if(myObj.myProp){
    alert("yes, i have that property");
};</code>
登录后复制

代码尝试检查名为 ' 的属性是否存在myprop',它不存在。这是因为 JavaScript 将表达式计算为“myObj.myprop”而不是“myObj.prop”。

要成功实现此逻辑,您可以利用多种方法:

使用 hasOwnProperty

<code class="js">var myProp = 'prop';
if(myObj.hasOwnProperty(myProp)){
    alert("yes, i have that property");
}</code>
登录后复制

hasOwnProperty 验证对象是否拥有特定属性,不包括继承的属性。

使用 in 运算符 (ES5)

<code class="js">var myProp = 'prop';
if(myProp in myObj){
    alert("yes, i have that property");
}</code>
登录后复制

in 运算符检查对象的可枚举属性,包括对象自身的可枚举属性和继承的。

使用方括号(ES6)

<code class="js">if('prop' in myObj){
    alert("yes, i have that property");
}</code>
登录后复制

在 ES6 中,方括号可以与 in 运算符互换使用,用于检查属性是否存在。

以上是如何在 JavaScript 对象中使用变量属性名称检查属性是否存在?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!