JS中神奇的a和undefined
阿新 • • 發佈:2019-01-04
console.log(a); 輸出什麼?
//報錯? underfined? a?
這裡應該會報錯.
因為這裡的a沒有加引號,只有加引號了才為字串,會輸出a;
沒有加引號應該是一個變數或者是別的,a沒有宣告所以這裡會報錯.
假如現在前面加一個var a; 會輸出undefined,因為他沒有給變數a賦值.
談談結果為undefined的情況.
1.宣告變量了,但沒有賦值 var arr; console.log(arr); 2.函式沒有返回值return或者return但未賦值 function arr(x,y){ sum=x+y; } console.log(arr(10,20)); //結果為undefined 即使加return變為: function arr(x,y){ sum=x+y; return; } console.log(arr(10,20)); //此時結果也為undfined,因為沒有賦值 正確應為: function arr(x,y){ sum=x+y; return=sum; } console.log(arr());//結果為30 3.一個數組,給一個數組賦值,跳著賦值,比如給下標為0的賦一個值,直接給下標為2的賦值,此時輸出這個陣列,下標為1的值會是undefined var arr=[]; arr[0]=10; arr[2]=20; console.log(arr); //此時結果會為 10,undefined,20