1. 程式人生 > >JavaScript踩坑筆記01---資料型別、變數、字面量、直接量

JavaScript踩坑筆記01---資料型別、變數、字面量、直接量

資料型別:

JavaScript中,資料按照值的劃分,可以分為兩大資料型別:基本型別和引用型別。

基本資料型別:
number 數值
string 字串
boolean 布林
undefined 未定義
引用資料型別:
object 物件
array 陣列
null
我們可以用typeof關鍵字來判斷一個值的型別。

舉例說明。

var num = 11;
var flo = 1.1;
var str = "Hello JavaScript";
var boo = false;
var und = undefined;
var obj = {
	name: "tom"
};
var arr = [0, 1, 2, true, {
	name: "tom"
}];
var nul = null;
// 數字和小數,都是數值型
console.log(typeof num); // number
console.log(typeof
flo); // number console.log(typeof str); // string // 布林型只有兩個值,true和false console.log(typeof boo); // boolean console.log(typeof und); // undefined console.log(typeof obj); // object console.log(typeof arr); // object console.log(typeof nul); // object

上述例子中,數字和小數,都是數值型。
布林型只有兩個值,true和false。
這裡要注意的是undefined和null,因為這兩個型別比較特殊。
確切的說undefined是一個值,因為這個型別裡,只有它這一個值,它表示“未定義”。
而null也是一個值,只不過它的型別盡然是object,它表示“空”。

undefined和null的區別:

在程式執行中,二者都能表示“未賦值”的意思,不過二者還是有些區別的。
一開始,我的理解是,undefined表示變數為空,null表示物件為空。
但我查閱過網上各位大佬的解釋後,才發現並沒有這麼簡單。
可以這麼理解,null表示意料之中的“空”,程式在執行過程中,報出一個變數為null,程式以為是你故意讓它為“空”的。
undefined表示意料之外的“空”,程式在執行過程中,報出一個變數為undefined,程式認為這裡不應該為“空”的。

變數:

變數指的是任意型別的資料,他的作用就是接收和傳遞資料。

var num = 1; // num為變數名
var str = "JavaScript"; // str為變數名

字面量:

字面量,又叫直接量,你能看到的確切的值就是字面量,看到什麼就是什麼。

var num = 1; // 意思是把字面量1賦值給變數num
const str = "JavaScript"; // 意思是把字面量"JavaScript"賦值給了常量str

個人學習總結,歡迎批評指正