基本資料型別 String Number Boolean Null Undefind
阿新 • • 發佈:2021-01-24
技術標籤:jsjavascript
<!DOCTYPE html>
<html lang="en">
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title >Document</title>
</head>
<body>
<script>
// 資料型別就是字面量的型別
// 基本資料型別:
// - String 字串
// - Number 數值
// - Boolean 布林值
// - Null 空值
// - Undefined 未定義
// 引用資料型別:
// - Object 物件
// 1 String 字串
//var str = 'good'; 建立一個字串str,字串需要要用引號起來,
// str = "how "are" you ";報錯,瀏覽器會識別就近的雙引號,以至於are變成未定義的變量了
// str = "how \"are\" you" 可以用\作為轉移字元解決上面問題,
//轉移字元:
// \\ ---- \
// \n ---- 換行
// \t ---- 製表符,相當於恩了tab鍵
// \' ---- '
// console.log(str); //也可以console.log('good');
// alert('asdas\nda\tsd');
// console.log('as\ndasd\tasd');
// 2 Number 數值
// 所有整數和浮點數都為數值
var a = 123;
var b = 1.23;
console.log(typeof a); //輸出number typeof為運算子 可以檢查變數的型別
console.log(typeof b); //輸出number
console.log(Number.MAX_VALUE); //輸出數值最大值 1.7976931348623157e+308
console.log(Number.MAX_VALUE * Number.MAX_VALUE); //輸出為Infinity,正無窮
console.log(-Number.MAX_VALUE * Number.MAX_VALUE); //輸出為-Infinity,負無窮
console.log(Number.MIN_VALUE); //輸出為5e-324 為大於0的最小的正值
a = Infinity;
console.log(typeof Infinity); //判斷Infinity的型別,為數值,控制檯輸出為number
a = 'asd' * 'asd'; //兩個字串相乘
console.log(a); //返回NaN,not a number非數字
console.log(typeof NaN); //輸出為number(返回的number是小寫的),所以NaN為數值型別
var c = 111111111111111111111 + 111111111111111;
console.log(c); //輸出為111111222222222230000,js中大值的整數運算存在偏差
c = 0.1 + 0.2;
console.log(c); //輸出0.30000000000000004 js中進行浮點數運算時,可能得到一個不精準的值,基本所有語言都有
//精度問題,二進位制無法精緻表示1/10的值,不要用js進行精確度要求較高的運算
// 3 Boolean 布林值
// true or false 兩個值
// 主要做邏輯判斷
var bool = true; //不用加引號
console.log(bool); //返回true
console.log(typeof bool); //返回boolean
// 4 Null 空值
//Null型別的值只有一個null
a = null;
console.log(a); //null
console.log(typeof a); //返回為object物件 表示為空的物件
// 5 Undefind 未定義
//輸出的結果只有一個undefind
var uname; //聲明瞭變數但未賦值
var uname = undefined;
console.log(uname); //輸出undefind 未定義
console.log(typeof uname); //undefind的資料型別為undefind
//Object物件比較複雜後續再學
</script>
</body>
</html>