快捷搜索:  汽车  科技

javascript基本数据类型有几种,基础-JavaScript中的数据类型

javascript基本数据类型有几种,基础-JavaScript中的数据类型

JavaScript的数据类型 包含了 ‘基本数据类型’ 和 ‘引用数据类型’

javascript基本数据类型有几种,基础-JavaScript中的数据类型(1)

JavaScript数据类型

基本数据类型
  • String
  • Number
  • Boolean
  • Symbol
  • BigInt
  • Null
  • Undefined
引用数据类型 (Object)
  • Object (普通对象)
  • Array (数组对象)
  • Date (日期对象)
  • RegExp(正则)
  • Function (函数)
  • Math(数据函数)
  • ...等
存储方式
  • 基本数据类型存储在栈内存(后进先出),被引用或拷贝时,会创建一个完全相等的变量;
  • 引用类型存储在堆内存(先进先出),存储的是地址,多个引用指向同一个地址。
如何判断 数据类型
  • typeof 可以准确检测基本数据类型 除 null(值为'object') 之外 但是去判断一个引用类型就不会准确的返回

typeof 1 // number typeof '1' //string typeof true //boolean typeof Symbol(1) //symbol typeof 1n //bigint typeof undefined //undefined typeof null // object typeof [] // object typeof {} // object typeof function(){} // function typeof Date() //string

  • instanceof 方法去判断 这个对象是否是之前那个构造函数生成的对象

let Car = function() {} let benz = new Car() benz instanceof Car // true

  • Object.prototype.toString.call()

我们可以通过 Object.prototype.toString.call() 去判断,这个方法会返回由 "[object " 和 class 和 "]" 三个部分组成的字符串。

如下:

console.log(Object.prototype.toString.call(undefined)) // [object Undefined] console.log(Object.prototype.toString.call(null)) // [object Null] var date = new Date(); console.log(Object.prototype.toString.call(date)) // [object Date] var number = 1; // [object Number] var string = '123'; // [object String] var boolean = true; // [object Boolean] var und = undefined; // [object Undefined] var nul = null; // [object Null] var obj = {a: 1} // [object Object] var symbol = symbol(1) // [object Symbol ] var array = [1 2 3]; // [object Array] var date = new Date(); // [object Date] var error = new Error(); // [object Error] var reg = /a/g; // [object RegExp] var func = function a(){}; // [object Function] console.log(Object.prototype.toString.call(Math)); // [object Math] console.log(Object.prototype.toString.call(JSON)); // [object JSON] function a() { console.log(Object.prototype.toString.call(arguments)); // [object Arguments] } a();

猜您喜欢: