2016-12-13 6 views
0

これらの2つの関数が異なる出力を与える理由を誰かに教えてください。なぜ「未定義」を与え、他のものは「オブジェクト」を与えるのでしょうか?予期しないJavaScriptの戻り値タイプ

function aaa(){ 
 
    return 
 
    { 
 
    test: 1 
 
    }; 
 
} 
 

 
console.log(typeof aaa()); 
 

 
function abc(){ 
 
    return {test: 1}; 
 
} 
 

 
console.log(typeof abc());

+0

カッコ '' 'return'''を使用してみてください。 – bharadhwaj

答えて

8
return 
{ 
} 

undefinedを返さしたがって

return; 
{ 
} 

として解釈されます。

function aaa(){ 
 
    return { 
 
    test: 1 
 
    }; 
 
} 
 

 
console.log(typeof aaa()); 
 

 
function abc(){ 
 
    return {test: 1}; 
 
} 
 

 
console.log(typeof abc());

関連する問題