1.變量類型
- undefined
- null
- string
- == 與 === 區別
- number
- boolean
- string、number、boolean均有對應的 '對象類'
2.函數
- 定義函數
- function 關鍵字
- 參數(見例子),arguments
- 函數內變量聲明,var區別
- 作用域
- 鏈式結構(子函數可以看見父函數的變量)
- 匿名函數
- 使用場景(非復用場景,如:jsonp回調函數)
- this特征
例子:var add = function(x) {
return x++;}add(1,2,3); // 參數可以隨意多個,類似Java中的(int x ...)
var fn = function(name, pass) {
alert(name);
alert(pass);
};
fn("hello","1234",5); // 按照傳遞的順序排列
var name = "windows";
var fn = function() {
var name = "hello";
alert(this.name);}fn(); // windows,this在匿名函數內部是指向windows范圍
var name = "windows";
var fn = function() {
name = "hello";
alert(this.name);}fn(); // 因函數內部變量name未聲明為var,則屬于全局變量,且this指向windows,則為'hello'
function add(a) {
return ++a;
}
var fn = function(x,add){
return add(x);
}
fn(1, add); // 函數作為參數
3.閉包