国产不卡视频在线播放,中文字幕亚洲综合小综合在线,亚洲一级大片,免费观看的成年网站不下载

阿里巴巴前端實習生在線筆試考后經驗總結

思而思學網

寫在前面

還是太年輕,第一次在線筆試有些緊張了

一、2015題目

我遇到的題目:6個選擇其中3個多選,1個填空,6個大題。客服姐姐說題目是隨機給的(因為給了一個時段考試,而不是統一時間點開考),不過題型應該是固定的。

1.單選:一個數組,兩個引用,相互賦值,問輸出眩暈抗性-30%

2.單選:問一個return匿名函數的函數的執行結果,內部還有apply眩暈抗性再-69%

3.單選:問字符串替換結果是什么,當然,又是套了幾層,繞了幾圈眩暈抗性再-1%,嗯,做完這道給徹底繞暈了

4.多選:移動端,如果A按鈕上覆蓋了一個B按鈕,給B按鈕的touchstart事件處理器中添加什么處理能讓A觸發click

按 鈕被擋住了,要想恢復交互性,隱藏遮擋物就好了,只敢選了visible一個,因為不確定題目是不是要在本次交互中觸發click,不清楚 display:none和從DOM中刪除會不會影響冒泡,沒敢選經過測試,發現本題根本不存在冒泡(好吧,當時可能沒睡醒),順便再測試了一下有冒泡的 情況,發現不影響冒泡,即便remove掉了,還是會冒泡

測試代碼如下:

5.多選:前端優化,下列哪一個可以減少HTTP請求數最近正在翻譯Yahoo!的30幾條前端優化原則,壓力不大

6.多選:題目忘記了記得除了前端優化的,其它兩道都沒有絕對把握

7.填空:個人博客地址想了下填了cnblogs,因為個人網站做得還不完善,拿不出手

8.大題:生成10個10-100之間的隨機數,并降序排列隱約記得書上說Math.random返回(0, 1]值

查證之后發現JS高程中文版135頁說(0, 1),而網上的普遍說法是[0, 1),后一種就和C里面的一樣。以前看書記得js的隨機數和C的不一樣。經過測試發現書上是錯的,確實含0不含1。總結如下:

1.獲取[a, b]:Math.round(Math.random()(b-a)+a)//四舍五入

2.獲取(a, b]:Math.ceil(Math.random()(b-a)+a)//向上取整(天花板)

3.獲取[a, b):Math.floor(Math.random()(b-a)+a)//向下取整(地板

4.獲取(a, b):好奇怪的需求,不如直接用第一種吧

測試random范圍的代碼如下:

var x = parseInt((Math.random()90+10 + '').split('.')[0]);//取整數部分

9.大題:實現IOS風格的switch按鈕,要求用多種方式實現花了太多時間,“實現”是要用嘴實現還是用代碼?用代碼寫了個小實現,七八分鐘就過去了,劃不來

10.大題:給String添加原型方法,實現簡單的模版替換考原型和正則表達式,不會在原型方法中獲取字符串的值,書中說一般不要給原型加自定義屬性,會污染環境,就沒太在意這方面,只注重了去理解原型,構造函數,作用域鏈的本質及其關系,結果。。

查了一下,發現this就是原字符串的值,阿席巴思密達~~~代碼如下:

function strcat(str){

return this + str;

}

String.prototype.strcat = strcat;

alert('xi'.strcat(' ba'));

11.大題:如何在畫布上畫出任意多個邊界不相交的圓,考慮時間和空間的平衡后半句感覺是要寫代碼,前半句又不像,最后沒時間了,就賣了個萌??“最簡單的方法是畫同心圓”,好吧,希望能讓改卷的大大心情愉快

12.大題:實現loadScript(url, callback)異步加載腳本,完成之后執行回調函數,要求支持IE非要支持IE嗎,時間不夠了,只好寫出步驟注釋

整理的代碼庫里收藏了xhr,如下:

/獲取HttpRequest對象,可以兼容各個瀏覽器 包括IE5.5+/

function getHttpObject(){

if(typeof XMLHttpRequest == "undefined"){//如果該對象未定義,則自定義該對象

XMLHttpRequest = function(){

try{

return new ActiveXObject("Msxml2.XMLHTTP.6.0");

}catch(e){}

try{

return new ActiveXObject("Msxml2.XMLHTTP.3.0");

}catch(e){}

try{

return new ActiveXObject("Msxml2.XMLHTTP");

}catch(e){}

try{//老版本的 Internet Explorer (IE5 和 IE6)

return new ActiveXObject("Microsoft.XMLHTTP");

}catch(e){}

return false;

}

}

return new XMLHttpRequest();

}

var xhr = getHttpObject();

xhr.onreadystatechange = function(){


熱門推薦

最新文章