gpt4 book ai didi

JavaScript - 识别属性是否已定义并设置为 'undefined' 或未定义

转载 作者:IT王子 更新时间:2023-10-29 03:11:02 24 4
gpt4 key购买 nike

假设我有以下代码:

function One() {}
One.prototype.x = undefined;

function Two() {}

var o = new One();
var t = new Two();

o.xt.x 都将评估为 undefinedo.hasOwnProperty('x')t.hasOwnProperty('x') 都将返回 false; propertyIsEnumerable 也是如此。两个问题:

  • 有什么方法可以表明 o.x 已定义并设置为 undefined
  • 有什么理由吗? (两者在语义上应该等价吗?)

一个小警告:执行 (for propName in o) 循环将产生 'x' 作为字符串之一,而在 t 中执行则不会 - 因此它们在内部的表示方式有所不同(至少在 Chrome )。

最佳答案

比您的方法稍微简单的方法是使用 Javascript in operator

alert('x' in o); // true
alert('x' in t); // false

关于JavaScript - 识别属性是否已定义并设置为 'undefined' 或未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/385960/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com