JavaScript 學習-2.資料型別
阿新 • • 發佈:2022-05-13
前言
JavaScript 資料型別可以分為基本型別和物件型別兩大類
- 基本型別:字串(String)、數字(Number)、布林(Boolean)、空(Null)、未定義(Undefined)、Symbol。
- 物件型別:物件(Object)、陣列(Array)、函式(Function),還有兩個特殊的物件:正則(RegExp)和日期(Date)。
typeof 檢視資料型別
變數的資料型別可以使用 typeof
操作符檢視
console.log(typeof "yoyo") // string console.log(typeof false) // boolean console.log(typeof 5) // number console.log(typeof 5.2) // number console.log(typeof [1, 2, 3, 4]) // object console.log(typeof {user:'yoyo', age: 20}) // object
可以通過var 先定義變數,再使用 typeof
操作符檢視
var a; var b = 'yoyo'; var c = 5; var d = 5.2; var e = [1, 2, 3, 4]; var f = {name:'John', age:34}; console.log(typeof a) // undefined console.log(typeof b) // boolean console.log(typeof c) // number console.log(typeof d) // number console.log(typeof e) // object console.log(typeof f) // object
Undefined 和 Null
當我們定義了一個變數,未賦值,那麼此時就是undefined
var a;
console.log(typeof a) // undefined
當我定義了一個變數並給初始值,此時就可以用 null 來清空變數
var x = 'hello';
console.log(x) // hello
console.log(typeof x) // string
x = null
console.log(x) // null
console.log(typeof x) // object
String 字串
字串型別比較簡單,加引號就是字串(單引號和雙引號都可以)
var x = 'hello';
var y = "world";
如果需要輸出帶引號的字串,可以用單雙交替的方式
var z = 'you say: "hello world."';
console.log(z)
或者我們可以用轉義字元
var a = "you say: \"hello world.\"";
console.log(a)
Number 數字型別
JavaScript 不分浮點數和整數,只有一種Number 資料型別
小數點後面帶.0
這種和不帶小數點,都是一個結果,會自動去掉後面的.0
var a = 12.00
var b = 12
var c = 12.34
console.log(a) // 12
console.log(b) // 12
console.log(c) // 12.34
極大或極小的數字可以通過科學(指數)計數法來書寫:
var x = 12e5; // 1200000
var y = 12e-5; // 0.0012
Boolean 布林值
布林值定義使用小寫的true
和 false
var x = true;
var y = false;
Array 陣列
可以直接使用中括號定義一個數組, 數組裡面的成員可以是任意型別
var x = ['hello', 'world', true, 22.2, [1, 2,3 ]]
console.log(x)
也可以使用new Array()
來建立一個數組物件
var a = new Array();
console.log(a)
那麼此時定義的是一個空陣列
通過陣列下標給陣列新增成員
var a = new Array();
console.log(a); // []
a[0] = 'hello';
a[1] = 'world';
a[2] = true;
console.log(a) // ['hello', 'world', true]
也可以直接在new Array()
物件的時候,同時給陣列新增成員
var a = new Array('hello', 'world', true, 22.2, [1, 2,3 ]);
console.log(a) // ['hello', 'world', true, 22.2, Array(3)]
Object 物件
物件用大括號。在括號內部,物件的屬性和值以鍵值對(key: value) 來定義。多個屬性直接用逗號隔開
var obj = {
user: 'yoyo',
tel: "123456",
age: 22,
like: ["python", 'java'],
info: {
"email": "[email protected]",
"address": "上海市"
}
}
console.log(obj)
屬性用字串,一般不需要加引號,對應的值可以是任意型別。Object 物件屬性的值也可以是另外一個object,如info 對應的值{ "email": "[email protected]", "address": "上海市"}
當使用console.log()
輸出的時候,發現是按屬性的首字母a-z輸出的。
也可以使用new Object
建立物件
var person = new Object;
console.log(person);
// 新增屬性
person.user = 'yoyo';
person.age = 22;
console.log(person);
new 宣告變數型別
var 在宣告一個變數的時候,可以是任意型別
var x;
可以在宣告變數的時候,使用new 宣告具體的資料型別變數。
var carname=new String;
var x= new Number;
var y= new Boolean;
var cars= new Array;
var person= new Object;