JavaScript 4©2ch.net (398レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
39(1): デフォルトの名無しさん [sage] 2015/02/16(月)13:36 ID:8Z58kFg+(2/6)
>>38
巻き上げの説明でよく出てくる例
var myname = "global";
function func() {
console.log(myname); //出力内容は?
var myname = "local";
console.log(myname); //出力内容は?
}
グローバルと同じ名前のローカル変数を定義してる時点で問題があるが、別の言語だと
"global"
"local"
と出力されるだろうが、そもそもローカル変数にアクセスしようとしてたら
どっちみち意味不明なバグになる
JavaScriptは親切に
undefine
"local"
としてくれるから逆に分かりやすい
セミコロンの問題はわざわざヘンテコな書き方をしない限り誰も問題とは思ってない
しいて上げれば末尾カンマの方が問題だ
ただ全部jshintをすれば事前に分かるから普通に書けば問題にはぶつからない
>>36のイディオムだけは使いまくるからどうにもならんけどな
40(2): デフォルトの名無しさん [sage] 2015/02/16(月)15:23 ID:AmwLqaSG(2/4)
>>39
C#とかPythonだと上位スコープと同じ名前が後でローカル変数として宣言されるときは、宣言前に使うと構文エラーになって100倍わかりやすいんだが
あと
b = 10
(function(){})()
とかくと10が関数でないってエラーが出るし、関数返したりするとエラーすら出なくなるんだけど、セミコロン省略派の人はjshintで問題を見つけられるの?
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.021s