JS語法學習筆記

2022-09-17 09:33:10 字數 2426 閱讀 1809

在function中寫this,在本function中可以顯示,寫person則顯示undefined.

在function中寫person,在function外可以顯示,寫this則顯示undefined.

var name;

var age;

var info;

function person(name,age);

}var p=new person('chen',22);

p.info();

document.writeln("w-name is:"+this.name+"

");document.writeln("w-age is:"+person.age+"

");

用call方法遍歷陣列:
var each=function(array,fn)       

}each([4,20,3],function(index,ele));

全域性變數在函式裡用this取不到,要用window呼叫。
var scope="全域性變數" ;

function test()

test();

如果定義的函式沒有明確賦值給某個物件,則用window呼叫 。
var hello=function(name)

window.hello("chen");

繼承
function base()   

}function extend()

extend();

繼承高階:輸出的是cat,執行的是animal裡的showname。
function animal()

}function cat()

}var animal=new animal();

var cat=new cat();

animal.showname.call(cat);

cat.title='cattitle';

console.log(cat.title);

它們各自的定義:

call:呼叫乙個物件的乙個方法,以另乙個物件替換當前物件。例如:b.call(a, args1,args2);即a物件呼叫b物件的方法。

它們的共同之處:

都「可以用來代替另乙個物件呼叫乙個方法,將乙個函式的物件上下文從初始的上下文改變為由thisobj指定的新物件」。

它們的不同之處:

prototype.constructor:
a) prototype:每乙個函式都包含乙個prototype屬性,這個屬性指向的是乙個物件的引用;而對已每乙個函式(類)的例項都會從prototype屬性指向的物件上繼承屬性,換句話說通過同乙個函式建立的所有物件都繼承乙個相同的物件。

b) 通過new 關鍵字和建構函式建立的物件的原型,就是建構函式的prototype指向的那個物件

每乙個函式的prototype屬性指向的物件都包含唯一乙個不可列舉屬性constructor,它指向了它所在的建構函式。

arguments
在j**ascript中,arguments物件是比較特別的乙個物件,實際上是當前函式的乙個內建屬性。arguments非常類似array,但實際上又不是乙個array例項。

innerhtml

用來獲取物件的內容(還可以向物件插入內容) 這裡輸出的是firstname、lastname。

firstname

lastname

peter

griffin

遍歷物件的屬性
function person(name,age)   

}var p=new person('chen',22);

for(a in p)

prototype
function person(name,age)   

}var p1=new person('chen',22);

p1.info();

person.prototype.walk=function()

var p2=new person('zhi',23);

p2.info();

p2.walk();// zhiwalk...

p1.walk();// chenwalk...

用這句話把walk方法嵌進去,這樣person類就有了walk方法,並且p1也能呼叫了。而且不汙染**。

person.prototype.walk=function()
並不是建立乙個新類,是對原類進行修改。所以稱為偽繼承。既可以擴充套件自定義類,也可以擴充套件js內部物件。

Markdown語法學習筆記

1 在段落中可以通過手動輸入 來實現文字中的強制換行。2 如果一定要markdown來自動生成 來實現換行的話,就在插入的地方按兩個以上空格然後回車。一級標題 二級標題 效果如下 2 利用 來表示一級標題,用 來表示二級標題。等級可以由1 6,分別為 的個數 一級標題 h1 二級標題 h2 六級標題...

MarkDown語法學習筆記

標題 標題只要在前面加入 不要引號 乙個 代表第一級標題,二個 達標二級標題,以此類推,如下圖所示。列表列表分成有序列表和無序列表 在atom好像沒有這個區分?無序列表要在開始處加上 或者 或者 無序列表採用諸如 1.2.3.這樣的方式來表示,如下圖所示。引用你如果需要引用其他人的話或句子,則可以用...

js基礎語法學習(二)

js中getelementbyid getelementsbyname getelementsbytagname 的區別 1 getelementbyid 的方法返回擁有指定的id的乙個物件引用 body部分 var ele document.getelementbyid id1 console.l...