問題タブ [function-expression]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
55 参照

javascript - JS クラス: クラス宣言における ES6 myFunc(){..} と ES5 myFunc = function() {...} の違い

次のコードでは、

read = function() { console.log('I am reading') }新しく作成されたインスタンスのプロパティになります。

p1.hasOwnProperty('read')true

speak() { console.log('I am speaking'); }に割り当てられるのとは対照的にPersonClass.prototype。すなわち

p1.hasOwnProperty('speak')False

p1.__proto__.hasOwnProperty('speak')true

誰かがなぜこれが起こるのか説明できますか.

基本的に、クラス内のメソッド宣言の 2 つの方法の違いは何ですか。

(ES6で)speak() {...}の短い構文だと思いましたspeak = function() {...}

ありがとう

0 投票する
0 に答える
18 参照

javascript - 関数宣言と式の組み合わせが機能しない

関数宣言と関数式を別々に見直していたのですが、問題ありませんでした

しかし、それらを結合しようとすると、関数宣言は無視されます

この種の宣言が必要になる実際のケースはありませんが、なぜ機能しないのかを理解しようとしています

適切な文献を知っている人はいますか?