1,下面兩個函數調用後返回的結果相同嗎?
function foo1(){ return {
bar: "hello"
};
}
function foo2(){ return
{
bar: "hello"
};
}
答案不一樣的;先看結果:調用函數foo1 返回的是一個對象{bar:"hello"};調用函數foo2 返回的是 undefined ;
原因是: 即分號在JavaScript中是一個可選項。當碰到 foo2()中包含 return語句的代碼行,而代碼行上沒有其他任何代碼,分號會立即自動插入到返回語句之後。返回的就是undefined ;
2, NaN ,它的類型, 是 Number:NaN 和任何東西比較——甚至是它自己本身!——結果是false ;