js基础知识——判断数据类型
一、typeof
二、constructor
- 语法:
数据结构.constructor
- 问题: null 和 undefined 不能使用
- 使用场景: 一般用于引用数据类型
- 潜在问题: 这是原型对象的某一个属性, 我们是可以手动更改的
function Person () {}
const p1 = new Person()
console.log(p1.constructor)
console.log(p1.constructor === Person)
三、 Object.prototype.toString.call(要检测的数据)
- 返回值: [object 数据类型]
- (字符串格式的, 并且数据类型的首字母是大写)
- 使用场景: 任意类型都可准确判断, 所以大部分情况下都可以使用
console.log(Object.prototype.toString.call([]))
console.log(Object.prototype.toString.call({}))
console.log(Object.prototype.toString.call(null))
console.log(Object.prototype.toString.call(undefined))
console.log(Object.prototype.toString.call(''))
console.log(Object.prototype.toString.call(100))