web前端筆試篇(一)

【 題外話 】:本博主做爲一名準畢業生,即將面臨畢業就業問題,即將到大四了,不許備考研的我,那麼該去幹嗎呢?毫無疑問,那就是實習,那麼即便是實習,那麼在要想進入本身心儀的企業以前,筆試這一關終究是沒法避免的!特此,刷刷題也是有必要的哈!數組

 

【 第一題 】瀏覽器

 1 var str = 'abc123';
 2 var num = parseInt(str);
 3 if (num == NaN) {
 4     alert(NaN);
 5 }else if (num == 123) {
 6     alert(123); 
 7 }else if (typeof num == 'number') {
 8     alert('number');
 9 }else {
10     alert('str');
11 }

答案:彈出 number函數

解析:學習

parseInt():做用:解析一個字符串,參數:string [, radix],返回:解析後的數字,原有數組是否改變:否;該解析字符串爲:'abc123',解析時從第一個字符開始解析,遇到非 Number 終止執行,故 num 的結果爲:NaN,NaN 屬於 number 類型,但不是一個有效的數字,而且NaN 和誰都不相等,包括本身,故彈出 numberspa

 

【 第二題 】code

 1 var a = 'abc' + 123 + 456;
 2 console.log(a);
 3 
 4 var a = '456' - '123';
 5 console.log(a);
 6 
 7 var a = 1;
 8 var b = '2';
 9 var c = a > b ? (a < b ? a : b) : (a == b ? a : b);
10 console.log(c);
11 
12 var a = 5 & 3;
13 console.log(a);

答案:abc123456  333  2  1對象

解析:blog

(1)+ :連字符索引

(2)除了 + 運算符,有連字符的特殊意義,其它均爲運算符,瀏覽器會進行數據類型轉換,對參與計算的自動轉換成 number 類型作用域

(3)b = 2;三元運算符,1 > 2 爲假,取 :後面的值,故c = (a == b ? a : b) ,1 == 2 爲假,故 c = b = 2

(4) &:位運算符,同 1 得 1,有 0 得 0;5:101 3:011 相與 => 001 => 1

 

【 第三題 】

 1 for (var i = 0; i < 10; i++) {
 2     alert(i);
 3     break;
 4 }
 5 alert(i);
 6 for (var i = 0; i < 10; i++) {
 7     continue;
 8     alert(i);
 9 }
10 alert(i);

答案:依次彈出三次,分別爲:0  0  10

解析:

break:終止循環,故 i = 0 執行後便終止了,i++ 便沒有執行,繼續往下執行,此時 i 的值爲:0,故再次彈出 0;

continue:跳出本次循環,因此不會執行 for 中的 alert(i),但會執行 i++ 直到 i = 10 結束循環,此時 i = 10,彈出 10.

 

【 第四題 】

 1 function fun(a, b, c) {
 2     var l = arguments.length;
 3     var num = 0;
 4     for (var i = 0; i < l; i++) {
 5         num += arguments[i];
 6     }
 7     alert(num)
 8 }
 9 fun(1,2,3);
10 fun(1,2,3,4);

答案:6  10

解析:

arguments 是一個對象,不是一個 Array,但相似 Array,除了 length 屬性和索引元素以外沒有任何 Array 屬性,可使用 arguments 對象在函數中引用函數的參數,因此即就是至關於函數的參數可做爲屬性存儲在 arguments 中,以數組索引的方式調取引用,此處即爲實現三個/四個數求和.【 可實現任意數求和 】

 

【 第五題 】

1 var a = 0;
2 function fun() {
3     alert(a);
4     var a = 10;
5 }
6 fun();
7 alert(a);

答案:undefined  0

解析:

變量提高:a,造成一個私有做用域,存儲一堆字符串:alert(a);var a = 10;

形參賦值,代碼自上而下執行:全局變量 a = 0;fun();函數執行,其私有做用域中,同理變量提高,故 a 爲 undefined;賦值:私有變量:a = 10;

彈出全局變量 a 的值:0

 

給本身點小自律:天天五道題,三個小demo,一需求,瞭解、鞏固、熟悉、學習新知識;fighting

 

若有錯誤之處,歡迎你們評論指出哈!

相關文章
相關標籤/搜索