複習JavaScript

主要複習的內容:

1、變量作用域,函數提升(function hoisting)和執行環境對象

1.1:變量作用域:如果在函數中聲明局部變量的時候,忘了寫var關鍵字,則創建的是全局變量

1.2:提升

1.3:執行環境對象

2、解釋變量作用域鏈(scope chain)以及爲什麼要使用他們

檔在查找變量的定義時,JavaScript引擎首先在局部執行環境對象上查找。如果沒有定義,則跳出作用域鏈,到創建它的執行環境中去,並且在該執行環境對象中查找變量的定義,以此類推,指導找到定義或到達全局作用域爲止。

3、使用原型(prototype)來創建對象

JavaScript對象是基於原型的(prototype-based)的,而很多其他語言都是基於類的(class-based)對象。

例子:

基於類:

public class Person(){
	public int id;
	public String name;
	public String sex;
	
	public Person(){}
	public Person(int id,String name,String sex){
		this.id = id;
		this.name = name;
		this.sex = sex;
	}
}
Person zhangsan = new Person(1,"張三","男");

過程:
1、創建類
2、定義類的構造函數
3、實例化對象

基於原型:

var proto = {
	id : 0,
	name : '',
	sex : ''
};
var person = function(id,name,sex){
	this.id = id;
	this.name = name;
	this.sex = sex;
}
person.prototype = proto;
var zhagnsan = new person(1,'張三','男');

過程:
1、定義原型對象
2、定義對象的構造函數
3、將構造函數關聯到原型
4、實例化對象


4、編寫自執行匿名函數

一個非常簡單的例子:

(function(){
	// do something
	console.log('something...');
})();


沒有去調用,但是執行了。這裏只是個簡單的例子,關於自執行匿名函數有很多知識點。

5、使用模塊模式和私有變量

以上是一個簡單的模塊化例子,把計算功能的模塊都放在了一起,在需要的時候進行調用。

6、探索閉包的樂趣和好處

閉包

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章