ローカルエリア内でグローバル変数定義する際、「a = 1;」「window.a = 1;」では何が違う?
下記一.二.はそれぞれ何が違うでしょうか?
・それぞれメリットデメリットあれば教えてください
ブラウザ以外
・一.はブラウザ以外でもaがグローバル変数になるので、一の方が良い?
ブラウザの場合、同じ意味?
・普通はどちらを使うとかあるでしょうか?
一.
(function() {
a = 1;
})()
console.log(a); //1
二.
(function() {
window.a = 1;
})()
console.log(a); //1
あるいは、下記のような書き方の方が良いでしょうか?
var a;
(function() {
a = 1;
})()
console.log(a); //1