數據類型運算符流程控制語句

JavaScript 定義了幾種數據類型? 哪些是原始類型?哪些是復雜類型?原始類型和復雜類型的區別是什么?

JS的數據類型包括:
1、數值;2、字符串;3、布爾值;4、undefined;5、null;6、對象。
其中,數值、字符串、布爾值屬于原始類型(primitive type)的值。它們是最基本的數據類型,不能再細分了;
而將對象稱為復雜類型(complex type)的值。因為一個對象往往是多個原始類型的值的合成,可以看作是一個存放各種值的容器。

typeof和instanceof的作用和區別?

利用typeof運算符可以直接返回一個變量的數據類型;
而instanceof則用于判斷一個變量是否屬于某種數據類型,它會返回一個布爾值。

如何判斷一個變量是否是數字、字符串、布爾、函數

直接使用typeof運算符+被判斷的對象。
返回值number代表數字,string代表字符串,boolean代表布爾值,function代表函數。

NaN是什么? 有什么特別之處?

當undefined轉化為數值時,即為NaN。它的含義是Not a Number,表示非數字。
NaN和任何值都不相等,包括自己。

如何把非數值轉化為數值?

利用以下三個函數可以把非數值轉換為數值:
1、Number()
2、parseInt()
3、parseFloat()

==與===有什么區別

==表示近似相等,===表示嚴格相等。
在使用==的時候,JS會先將不同數據類型的值轉換為同類型,再做比較;而使用===則兩邊的值必須是同類型,再進一步判斷是否相等。

break與continue有什么區別

break 用于強制退出循環體,整個循環語句都不再執行,而執行循環后面的語句;
continue 用于退出本次循環,不執行continue后面的語句,而執行下次循環。

void 0 和 undefined在使用場景上有什么區別

由于undefined是可以被賦值的,當我們在調用undefined進行判斷時,并不確定它是否被賦值,因此有可能對結果產生干擾。
而void 0 始終返回 undefined,所以我們通常使用void 0 代替 undefined,這樣可以確保判斷結果的準確性。

以下代碼的輸出結果是?為什么?

console.log(1+1);
//輸出“2”。兩個數值相加,直接返回計算結果。

console.log("2"+"4");
//輸出“24”。兩個字符串拼接,返回24。

console.log(2+"4");
//輸出“24”。數值2和字符串“4”相加,先將數值2轉化為字符串,再和“4”拼接,返回24。

console.log(+"4");
//輸出“4”。直接將字符串轉換為數值輸出。

以下代碼的輸出結果是?

var a = 1;
a+++a;
typeof a+2;
//輸出“number2”。typeof的優先級高于+,所以先輸出(typeof a)為number,再和2拼接。

以下代碼的輸出結果是? 為什么

var a = 1;
var b = 3;
console.log( a+++b );
//輸出“4”。a++是指在本條語句執行完后再+1,所以先輸出1+3的值,a再執行自增。

遍歷數組,把數組里的打印數組每一項的平方

var arr = [3,4,5]

for(var i=0;i<arr.length;i++){
console.log(arr[i]*arr[i]);
}

遍歷 JSON, 打印里面的值

var obj = {
name: 'hunger',
sex: 'male',
age: 28
}

for(var i in obj){
console.log(obj[i]);
}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容