JavaScript語言精粹 筆記

2021-09-08 09:03:46 字數 1709 閱讀 6956

1、物件屬性檢索

var student =;
要檢索name,可以用student["name"]  或者 student.name。

2、物件屬性更新

student.name = 'wang';

student.nickname = 'yu';//物件之前沒有nickname屬性,則自動擴充到改物件中。

3、物件的引用

var x = student;

x.nickname = 'tom';

var nick = student.nickname;

因為x和student都是指向同乙個物件的引用,所以nick為'tom'。

4、hasownproperty 檢查物件是否擁有屬性,它不會檢查原型鏈。

5、用for in 遍歷乙個物件中的所有屬性名時,改列舉過程會列出所有屬性,包括函式和原型中的屬性。

var name;

for(name in student)

};myobject.increment();

document.writeln(myobject.value); //1

myobject.increment(2);

document.writeln(myobject.value);

//3函式呼叫模式:當function不是乙個物件的屬性時,則被當做乙個函式來呼叫

myobject.double = function

() ;

helper();

//以函式的形式呼叫helper

};//

以方法的形式呼叫double

myobject.double

();documnet.writeln(myobject.getvalue());

//6

構造器呼叫模式

//

建立乙個名為quo的構造器函式。它構造乙個帶有status屬性的物件。

var quo = function

(string) ;

//給quo的所有例項提供乙個名為get_status的公共方法。

quo.prototype.get_status = function

();//

構造乙個quo例項

var myquo = new quo("confused");

document.writeln(myquo.get_status());

//

構造乙個包含2個數字的陣列,並將它們相加

var array = [3,4];

sum值為7

//構造乙個包含status成員的物件。

var statusobject =;

//statusobject 並沒有繼承自quo.prototype,但我們可以再statusobject上呼叫get_status方法,儘管statusobject並沒有乙個名為get_status的方法

//status的值為a-ok

7、給型別新增方法:

《JavaScript語言精粹》摘錄一

1 識別符號 區分大小寫 第乙個字元必須是字母 下劃線或美元符號,其他字元可以是字母 下劃線 美元符號或數字 關鍵字和保留字不可用作識別符號 關鍵字 if else catch等 保留字 abstract boolean break byte case catch char class const ...

JavaScript語言精粹 毒瘤 糟粕(應對)

毒瘤 不使用全域性變數 使用塊級作用域,不var return與返回值要位於同一行,否則當自動插入分號後會返回undefined 當物件的屬性名與js保留字相同時,無法使用點語法,使用括號表示法 js字元是16位的,unicode將一對字元視為乙個單一的字元,而js將其認為是兩個不同的字元 注意ty...

JavaScript 語言精粹讀書筆記 第三章

在物件字面量中,如果屬性名是合法的標示符那麼時候用引號擴起來是可選的,相應的在訪問屬性時可以使用兩種方式,中括號或者點。否則定義時引號是必須的,在訪問時也只能使用括號形式。每個物件都會被鏈結到原型物件,可以通過原型物件實現繼承,所有通過物件字面量建立的物件都會被連線到object.property,...