JS数据类型

107 阅读1分钟

数据类型

1、基本数据类型(原始类型):值直接保存在变量本地的数据类型

null:主动释放对象的引用时使用

undefined:所有变量的默认值

Boolea 

String:用unicode编号保存每个字符,查看任意字符unicode  “xxx”.charCodeAt(0)

Number:  计算机也有计算不尽的时候,即舍入误差,解决 n.toFixed(d) ,监测时常使用isNaN(number)函数判断是否为数值类型

symbol 新增的

2、引用数据类型 

 Object

========================================================

请注意:

  • NaN的数据类型是Number
  • 数组的数据类型是Object <= typeof
  • Null的数据类型是Object <= typeof
  • 未定义变量的数据类型是undefined


*******************************************************************************************

数据类型判断

1. typeof

typeof "John"                 // 返回 string
typeof 3.14                   // 返回 number
typeof NaN                    // 返回 number
typeof false                  // 返回 boolean
typeof [1,2,3,4]              // 返回 object
typeof {name:'John', age:34}  // 返回 object
typeof new Date()             // 返回 object
typeof function () {}         // 返回 function
typeof myCar                  // 返回 undefined (如果 myCar 没有声明)
typeof null                   // 返回 object

注意:我们可以使用 typeof 来获取一个变量是否存在,如 if(typeof a!="undefined"){},而不要去使用 if(a) 因为如果 a 不存在(未声明)则会出错


2. instanceof:obj(实例对象)  instanceof  Object(构造函数)

只能用来判断复杂数据类型,用于监测构造函数(右边)的prototype属性是否出现在某个实例对象(左边)的原型链上

var c = [1,2,5,6]
var d = {name: 'sadasd'}
var e = function() {}
console.log(d instanceof Object)


3. constructor


4. Object.property.toString.call()

他返回"[object, 类型]",注意返回的格式及大小写,前面是小写,后面是首字母大写

付个链接加深一下理解:www.jianshu.com/p/e4237ebb1…