1. 程式人生 > >javascript知識點雜記

javascript知識點雜記

表達式 n) 調用 表達 err 函數表 peer ole 知識點

1 for(var i = 0; i < 10; i++) {
2     setTimeout(function() {
3     console.log(i);  //輸出10個10,因為setTimeout方法是異步的,當執行到setTimeout時,for循環已經執行完畢,i變量值為10
4     }, 1000);
5 }

1 for (var i = 0; i < 10; i++) {
2     (function(a) {
3     // 變量 i 的值在傳遞到這個作用域時被復制給了 a,
4     // 因此這個值就不會隨外部變量而變化了
5     setTimeout(function
() { 6 console.log(a); //輸出0 1 2 3 4 5 6 7 8 9 7 }, 1000); 8 })(i); // 我們在這裏傳入參數來"閉包"變量 9 }

 1 //聲明式函數定義語句屬於頂級作用域範圍,函數調用語句可寫在函數聲明語句之前:
 2 add(1, 2);//3
 3 function add(m, n) {
 4     alert(m + n);
 5 }
 6 
 7 
 8 //函數表達式定義的函數在定義之前無法調用:
 9 //TypeError: add is not a function
10 add(1, 2);
11 var
add = function(m, n) { 12 alert(m + n); 13 };

javascript知識點雜記