Drafts

@cm3 の草稿置場 / 少々Wikiっぽく使っているので中身は適宜追記修正されます。

ブラウザのデベロッパーコンソールで use strict した場合の振る舞いについてのメモ

基本的に、1回のコマンドでスコープが区切られているので、

"use strict"

a = 3

を別々にやると特にエラーが出ずに、

"use strict"; a = 3

でエラーがでるようになります。


また、以下3つではWindowオブジェクトが返りますが

(function() { console.log(this)} )()

'use strict'; console.log(this);

console.log(this)

以下だけ undefined が返ります。

'use strict'; (function() { console.log(this)} )()

これは

(function() { console.log(this)} )()

を理解するのが肝ですね、strict じゃなければ勝手に外側の this を引き継いじゃっている。