それらの間に違いはありますか? 私は両方の方法を使用していますが、どの人が何をし、どちらが良いのか分かりません。これは関数を定義する良い方法ですか?
function abc(){
// Code comes here.
}
abc = function(){
// Code comes here.
}
これらの機能の定義には違いがありますか?私は++や++のような何か?
それらの間に違いはありますか? 私は両方の方法を使用していますが、どの人が何をし、どちらが良いのか分かりません。これは関数を定義する良い方法ですか?
function abc(){
// Code comes here.
}
abc = function(){
// Code comes here.
}
これらの機能の定義には違いがありますか?私は++や++のような何か?
function abc(){
// Code comes here.
}
吊り上げます。
abc = function(){
// Code comes here.
}
ホイストしません。あなたがやった場合例えば
は:abc
を囲むスコープの一番上に掲揚されるよう
abc();
function abc() { }
コードが実行されます。
あなたは、しかし、やった場合:
abc();
var abc = function() { }
abc
が宣言されていますが値を持たないため、使用することはできませんされています。
どちらが良いかは、プログラミングスタイルの議論が多いです。
http://www.sitepoint.com/back-to-basics-javascript-hoisting/
Nitpick:* "それで' abc'はまだ宣言されておらず、使用できません。変数宣言も引き上げられているので、変数は宣言されていますが、まだ値はありません。 –
@FelixKling - 更新されました。乾杯。 –
短い答え:なし。
グローバル名前空間に関数を配置しています。誰でもこれにアクセスでき、誰でもこれを上書きすることができます。
(function(){
// put some variables, flags, constants, whatever here.
var myVar = "one";
// make your functions somewhere here
var a = function(){
// Do some stuff here
// You can access your variables here, and they are somehow "private"
myVar = "two";
};
var b = function() {
alert('hi');
};
// You can make b public by doing this
return {
publicB: b
};
})();
繰り返し質問:http://stackoverflow.com/questions/336859/javascript-var-functionname-function-
それを行うための標準的な、より安全な方法は、自己の呼び出し機能のすべてを包んでvs-function-functionname – ikis
なぜ 'html'タグを再度追加しましたか?この質問はHTMLとは関係ありません! –
これは、人々がオブジェクト指向のアプローチを使用するjavaのこの問題を考えるかもしれないからです... – Janak