javascript基礎知識練習題

無論學習什麼語言,基礎是決定高度的一大因素,本文是我整理的javascript基礎題目,不難,都是最基礎的知識。值得一刷

1.數據類型 / 變量

1.1 JS中的數據類型都有哪些,他們之間的區別是什麼?

1.2 數據類型的區別

let a = 12;
let b = a;
b = 13;
console.log(a);
let a = {n:12};
let b = a;
b['n'] = 13;
console.log(a.n);
let a = {n:12};
let b = a;
b = {n:13};
console.log(a.n);

這道題就不給詳解了,上面已經介紹了數據類型的區別,利用他的區別來做這道題使你掌握的更紮實吧!!!

1.3 檢測數據類型的四種方式?

下圖保存起來,50%查看效果最加

1.4 創建變量的方式

2. 分析程序

2.1 parseFloat / alert

let num = parseFloat('width:100px');
if(num===100){
   alert(1);
}else if(num===NaN){
   alert(2);
}else if(typeof num==='number'){
   alert(3);
}else{
   alert(4);
}

parseFloat 的規則是從左向右的查看字符串(不是字符串就先轉爲字符串)中的每一項,如果第一個不是數字那麼直接返回NaN,如果第一個是數字,那麼直到遇到非有效數字就停止,返回非有效數字前面的數字。

typeof 的返回值首先是一個字符串

alert彈出的東西都會隱性轉爲字符串

答案 ->‘3’

2.2 for / if / break / continue

for(var i=0;i<10;i+=2){
    if(i<=5){
        i++;
        continue;
    }else{
        i+=3;
        break;
    }
    alert(i);
}
alert(i);

這道題是在上學期間就會遇到的題目吧,回憶一下break、continue在for中的作用吧!

for循環中四步:先初始值 -》判斷條件(不滿足條件不做下面的幾步) -》執行循環體 -》步數累計

break:終止整個循環,並且下面的代碼的不再執行,也不會執行步長累計

continue:終止本次循環,繼續下次循環。下面的代碼不再執行,但是會去執行步長累計

答案:輸出一次 ‘9’

2.3 騰訊的一道字符串拼接題目

let result = 1+null+true+undefined+'Tencent'+false+[]+undefined+null;
console.log(result);

字符串的四則運算,加法時如果加號左右出現字符串就變成字符串拼接,基本數據類型直接拼接,引用數據類型變爲字符串再拼接

答案:‘NaNTencentfalseundefinednull’

2.4 boolean的應用

A3-'1px'?alert(2):alert(3);
B3+'1px'?alert(4):alert(3);

字符串的四則運算

答案:

A:‘3’

B:‘4’

2.5 對象的獲取

var name = 10;
var obj = {
   name: 'lili'
};
console.log(obj['name']);
console.log(obj[name]);

對象中獲取屬性的方式

答案:lili undefined

2.6 ++i / i++ 上學就會做的一道題

let i=1;
console.log(1-(++i)+(i--)+1+(i++)-(--i)-1);
console.log(i);

上面的這個估計大家都會做,但是我說的不是這個,想和大家聊聊i++和i+=1這兩個的區別;

i++ :如果i是一個字符串,那麼加之前會先轉爲數字再加

i+=1:如果i是字符串,就是字符串拼接。不會隱性轉化

3. 數組

3.1 向下面數組末尾追加一個值100,你有幾種辦法?

let ary = [12,14,13,35,16,28];

我可以想到的有三種,你們呢?歡迎追加方法

ary.push(100);

ary[ary.length] = 100;

ary.splice(ary.length,0,100);

3.2 把下面的數組進行排序(降序)

let ary = [12,14,13,35,16,28];

ary.sort((a,b)=>b-a)

3.2 實現找到數組第n項到第m項(包含n和m)的內容,返回一個新的數組

ary.slice(n-1,m)

4. 字符串

4.1 .完成以下字符串處理需求

let time = '2020-04-16';
//->需要獲取的結果是 ‘2020/04/16’

time = time.replace(’-’,’/’).replace(’-’,’/’);



time = time.split(’-’); time = ${time[0]}/${time[1]}/${time[2]};

4.2 簡述字符串截取方法 substr 、 substring 、 slice 三者的區別

substr(n,m):截取的是字符串中索引爲n開始的,並且截取m位

substring(n,m):從索引爲n的位置開始截取,截取到索引爲m的位置但是不包含索引爲m這一項

slice(n,m):substring一樣,但是他可以支持負數索引

5. 程序

最後的目的就是需要我們敲出來程序呀,下面是整理的幾個最小案例,使用的就是上面的這些基礎知識就可以;

5.1 任意數求和(要求輸入的需要過濾,把非有效數字除去)

5.2 url問號傳參解析

5.3 數組去重

5.4 隨機搖號

6. 總結

我們想要學會走首先需要會爬;想要跑首先需要走,每一個過程的都是需要上一個過程做基礎,併爲下一個過程做鋪墊;任何時候,學好基礎知識,一步步的向上走纔是最快的途徑。沒有捷徑,如果真要有,我認爲那就是立馬行動!加油,程序員們!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章