[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/21 06:30 / Filesize : 433 KB / Number-of Response : 1011
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

+ JavaScript の質問用スレッド vol.122 +



722 名前:デフォルトの名無しさん (ワッチョイ f35b-tpgq) mailto:sage [2017/03/20(月) 18:23:45.84 ID:5J3+8zMD0.net]
>>711
> Why?
> Function declarations are hoisted, which means that it’s easy - too easy - to reference the function before it is defined in the file.
> This harms readability and maintainability. 
> If you find that a function’s definition is large or complex enough that it is interfering with understanding the rest of the file,
> then perhaps it’s time to extract it to its own module!
> Don’t forget to name the expression - anonymous functions can make it harder to locate the problem in an Error's call stack.
> ([Discussion](https://github.com/airbnb/javascript/issues/794))
まずこれが嘘だろ。
関数宣言はどこにでも置けるのだから、関数式を置いている場所においても動作は問題ない。
遠くに置いて見にくくなるのなら、近くに置けばいいだけの話。
結局のところ、訳の分からない場所に置く馬鹿がいることが問題なんだよ。

関数式で前方宣言を強制することは出来る。
しかし、前方宣言が文法的に強制されているCに於いては、糞だと言う人のほうが多い。
だからそれ以降の言語、おそらく全部で、この仕様は捨てられているわけでね。

どこにでも置けるという、より自由度が高い方法を適切に使いこなした場合、
より自由度が低い方法でそれを超えることは出来ないのは当然。
それを馬鹿に合わせてどうするんだ、って話。

ただまあ、JavaScriptにおいては、このスレに限らず、Web上にもこの手のトンデモ情報が多すぎる。
ホームグラウンドだってこともあるのだろう、未熟者がお気軽に情報発信してしまいすぎている。
だから余計におかしくなる。

ただし、実はメンテ性は少し落ちる。
何らかの変更でポインタが必要になった場合、関数宣言→関数式に変えるが、
前方宣言強制になるので、理想的には、最初から関数式で書いた場合に置いたであろう場所 ---(A)
に移動させることになる。ところが、2段階とかで呼んでいる場合、それが分かりにくいので、
機械的にやってしまうのなら、関数内の頭に持っていく ---(B)
しかなくなる。で、(B)が嫌いなら残念なことになる。気にしないのなら大して問題はない。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<433KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef