私はこれを理解するのを助けることができる誰かがjavascriptコードのこのpeiceを理解できません。var some = [] ['forEach'] ['constructor'];
var some = []['forEach']['constructor'];
私はこれを理解するのを助けることができる誰かがjavascriptコードのこのpeiceを理解できません。var some = [] ['forEach'] ['constructor'];
var some = []['forEach']['constructor'];
それは基本的にArray.prototype.forEach.constructor
と同じであるものを[].forEach.constructor
と同じです。ここで
はそれを打破する方法は次のとおりです。
[]['forEach']['constructor'];
// Convert bracket property access notation to dot notation
[].forEach.constructor;
// `forEach` is a property of Array.prototype
Array.prototype.forEach.constructor;
// `forEach` is a function reference with a
// `constructor` property, due to `Function.prototype`
Function.prototype.constructor;
// `Constructor.prototype.constructor === Constructor`, generally
Function;
console.log(
[]['forEach']['constructor'] === Function //=> true
);
このコードは有用であろう、なぜあなたが求めている場合は、私はかなりよく分かりません。おそらく難読化。
ブラケット表記を使用しています。 – Li357
[Array#forEach']のコンストラクタを取得します(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach) –