有多少种方法可以查看手动添加到函数中的所有属性?JavaScript的.JS

Yel*_*fun 6 javascript properties function key-value keyvaluepair

在JavaScript中,函数是第一类对象,这意味着您可以像处理任何对象一样处理它们,在这种情况下,您只是向函数对象添加属性.

好吧,让我们为函数添加一些属性.

  function a() {
    a.firstProp = "I'm 1st - property";
  }

  a.seccondProp = "I'm 2st - property";

  function b() {
    a();
  }

  b(); // initialize 1st property (firstProp)  for `function a`;

  console.log( Object.getOwnPropertyNames(b) );
  console.log( Object.getOwnPropertyNames(a) );
Run Code Online (Sandbox Code Playgroud)

如何在Chrome DevTools中看到我在代码示例中添加到函数中的键值对?

Nin*_*olz 2

您可以使用Object.assign,它将自己的可枚举属性复制到一个空对象并查看。

或者使用Object.entries.

function a() {
    a.firstProp = "I'm 1st - property";
}

a.seccondProp = "I'm 2st - property";

function b() {
    a();
}

b(); // initialize 1st prop;

console.log(Object.assign({}, a));
console.log(Object.entries(a));
Run Code Online (Sandbox Code Playgroud)