0

このコードを見てください:

var args;
function foo(){
  args = arguments;
}

foo();

console.log(args); // []
args.callee(); // foo

コンソールに引数オブジェクトのプロパティまたはメソッドが表示されないのに、呼び出し先メソッドを呼び出すことができないのはなぜですか?

4

2 に答える 2

4

foo引数を渡していません。また、calleeプロパティは「列挙不可能」です。

于 2012-08-09T14:46:33.493 に答える
3

免責事項: これは、Chrome または Firebug コンソールを使用していることを前提としています。標準はありません。そのため、カスタム コンソールはファンキーなことを行う可能性があります。

console.log配列のような*オブジェクトを「プレーンな」オブジェクトとは異なる方法で表示するために使用したためです。オブジェクトのプロパティを表示するには、 を使用しますconsole.dir

* 配列のようにするには、オブジェクトにlengthプロパティとsplice関数、またはその他のいくつかのニッチな条件が必要です。

于 2012-08-09T14:46:39.547 に答える