以下是我為了準(zhǔn)備14年9月面試阿里所做的筆記節(jié)選:(僅僅是考察點,具體題目和擴展請自己思考)
基礎(chǔ)1,什么是命名空間,變量污染,變量聲明提升,預(yù)編譯?如何檢查一段代碼執(zhí)行后是否聲明了全局變量?
2,隱式轉(zhuǎn)換的種種規(guī)則
3,關(guān)于對象,對象的屬性可能有哪些特性(attribute)?什么是原型鏈?如何檢測某一屬性是在對象中還是原型鏈中?如何檢測是否是普通對象或空對象?寫一個工廠模式?(工廠模式也有很多細(xì)節(jié),具體可以參考《javascript模式》一書,不是《javascript設(shè)計模式》)
4,變量類型檢測、特性檢測以及異常避免
5,setTimeout的特性
6,數(shù)組幾個API的手工實現(xiàn)
7,事件
8,正則表達式,至少要明白$1和\1的意思和幾個API的用法。
9,javascript如何獲得隨機unicode字符?
10,JSON.stringify的參數(shù)傳一個什么對象的時候不能處理?(可以試試JSON.stringify(window))11,fn.apply的第一個參數(shù)是context(函數(shù)運行的上下文),那么這個參數(shù)傳一個數(shù)組會怎么處理?
DOM操作
1,實現(xiàn)一些API如getElementsByClass(有很多細(xì)節(jié),參見司徒正美的博客)
2,各種寬度高度(clientHeight之類)的含義及各瀏覽器之間的差異性
3,實現(xiàn)一個帶回調(diào)函數(shù)的插入DOM節(jié)點API(須考慮script標(biāo)簽、documentFragment)
CSS操作1,如何操作CSS的偽類和偽元素?2,如何檢測改瀏覽器是否支持某個CSS3的特性? ajax操作1,get和post的區(qū)別及使用要點
2,http協(xié)議,包括格式、狀態(tài)碼,cookie操作
3,跨域
4,轉(zhuǎn)換JSON的幾種方式,JSON.stringfy有什么使用限制?
性能1,javascript有哪些性能優(yōu)化的措施?可看《高性能javascript》
綜合:各種插件的設(shè)計思路其他的html5相關(guān)和NodeJS相關(guān)暫略
聯(lián)系客服