【问题标题】:Why does every JS object have one undefined property [duplicate]为什么每个 JS 对象都有一个未定义的属性 [重复]
【发布时间】:2015-07-26 12:55:25
【问题描述】:
let obj = {a:'a',b:'b'};
for (let p in obj){
   console.log(p);
}

输出:

a 
b
undefined

未定义的属性是怎么回事?

【问题讨论】:

  • 那不是 return of function 的属性,developer tools 打印
  • 好吧,我现在觉得自己很笨。如果您将此作为答案重新发布,我可以接受它
  • 没问题.. 没有问题是愚蠢的,直到你知道答案,还有一个有趣的事实是开发人员工具会在 AJAX 的情况下打印返回的响应,即使你已经在回调函数之外对其进行了安慰。跨度>

标签: javascript console undefined console.log


【解决方案1】:

这不是属性,而是开发者工具打印的函数返回

例子:

console.logger = function(p){
           console.log(p);
           return "logged"
      }
var obj = {a:'a',b:'b'};
for (var p in obj){
   console.logger(p);
}

a          // logs the property
b          // logs the property
"logged"   // logs the return of logger function, undefined in case nothing's returned

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-14
    • 2014-06-09
    • 2015-10-22
    • 2017-12-25
    • 1970-01-01
    • 2021-11-10
    相关资源
    最近更新 更多