----------------------------
1. 介紹js的基本數(shù)據(jù)類型
Undefined相艇、Null、Boolean纯陨、Number坛芽、String
2. js有哪些內(nèi)置對(duì)象?
數(shù)據(jù)封裝類對(duì)象:Object翼抠、Array咙轩、Boolean、Number 和 String
其他對(duì)象:Function阴颖、Arguments活喊、Math、Date量愧、RegExp钾菊、Error
3. this對(duì)象的理解
this總是指向函數(shù)的直接調(diào)用者(而非間接調(diào)用者);
如果有new關(guān)鍵字偎肃,this指向new出來的那個(gè)對(duì)象煞烫;
在事件中,this指向觸發(fā)這個(gè)事件的對(duì)象累颂,特殊的是滞详,IE中的attachEvent中的this總是指向全局對(duì)象Window。
4. eval是做什么的紊馏?
它的功能是把對(duì)應(yīng)的字符串解析成JS代碼并運(yùn)行料饥;
應(yīng)該避免使用eval,不安全瘦棋,非常耗性能(2次稀火,一次解析成js語句暖哨,一次執(zhí)行)赌朋。
由JSON字符串轉(zhuǎn)換為JSON對(duì)象的時(shí)候可以用eval凰狞,var obj =eval('('+ str +')')。
5. DOM怎樣添加沛慢、移除赡若、移動(dòng)、復(fù)制团甲、創(chuàng)建和查找節(jié)點(diǎn)
// 創(chuàng)建新節(jié)點(diǎn)
createDocumentFragment() //創(chuàng)建一個(gè)DOM片段
createElement() //創(chuàng)建一個(gè)具體的元素
createTextNode() //創(chuàng)建一個(gè)文本節(jié)點(diǎn)
// 添加逾冬、移除、替換躺苦、插入
appendChild()
removeChild()
replaceChild()
insertBefore() //在已有的子節(jié)點(diǎn)前插入一個(gè)新的子節(jié)點(diǎn)
// 查找
getElementsByTagName() //通過標(biāo)簽名稱
getElementsByName() //通過元素的Name屬性的值(IE容錯(cuò)能力較強(qiáng)身腻,會(huì)得到一個(gè)數(shù)組,其中包括id等于name值的)
getElementById() //通過元素Id匹厘,唯一性
6. null和undefined的區(qū)別嘀趟?
null是一個(gè)表示"無"的對(duì)象,轉(zhuǎn)為數(shù)值時(shí)為0愈诚;undefined是一個(gè)表示"無"的原始值她按,轉(zhuǎn)為數(shù)值時(shí)為NaN。
undefined:
(1)變量被聲明了炕柔,但沒有賦值時(shí)酌泰,就等于undefined。
(2) 調(diào)用函數(shù)時(shí)匕累,應(yīng)該提供的參數(shù)沒有提供陵刹,該參數(shù)等于undefined。
(3)對(duì)象沒有賦值的屬性哩罪,該屬性的值為undefined授霸。
(4)函數(shù)沒有返回值時(shí),默認(rèn)返回undefined际插。
null:
(1) 作為函數(shù)的參數(shù)碘耳,表示該函數(shù)的參數(shù)不是對(duì)象。
(2) 作為對(duì)象原型鏈的終點(diǎn)框弛。
7. new操作符具體干了什么呢?
(1)創(chuàng)建一個(gè)空對(duì)象辛辨,并且 this 變量引用該對(duì)象,同時(shí)還繼承了該函數(shù)的原型瑟枫。
(2)屬性和方法被加入到 this 引用的對(duì)象中斗搞。
(3)新創(chuàng)建的對(duì)象由 this 所引用,并且最后隱式的返回 this 慷妙。
8. JSON 的了解僻焚?
JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式。它是基于JavaScript的一個(gè)子集膝擂。數(shù)據(jù)格式簡(jiǎn)單, 易于讀寫, 占用帶寬小虑啤。
格式:采用鍵值對(duì)隙弛,例如:{'age':'12', 'name':'back'}
9. call() 和 apply() 的區(qū)別和作用?
apply()函數(shù)有兩個(gè)參數(shù):第一個(gè)參數(shù)是上下文狞山,第二個(gè)參數(shù)是參數(shù)組成的數(shù)組全闷。如果上下文是null,則使用全局對(duì)象代替萍启。
如:function.apply(this,[1,2,3]);
call()的第一個(gè)參數(shù)是上下文总珠,后續(xù)是實(shí)例傳入的參數(shù)序列。
如:function.call(this,1,2,3);
10. 如何獲取UA勘纯?
function whatBrowser() {
document.Browser.Name.value=navigator.appName;
document.Browser.Version.value=navigator.appVersion;
document.Browser.Code.value=navigator.appCodeName;
document.Browser.Agent.value=navigator.userAgent;
}
當(dāng)你還在猶豫局服,別人已經(jīng)行動(dòng),提升技術(shù)驳遵,增加收入腌逢,我在扣丁等你,速加老師qq2337862882 領(lǐng)取免費(fèi)的視頻學(xué)習(xí)資源3瘛2取!