<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// typeof 可以检测数据类型
// 出现了问题 null给我检测成了object 复杂数据类型我无法知道具体是什么类型
// console.log(typeof (100)) // number
// console.log(typeof ('haha')) //string
// console.log(typeof (true)) // boolean
// console.log(typeof (undefined)) // undefined
// console.log(typeof (null)) //null
// console.log(typeof ({})) //object
// console.log(typeof (new Object())) // object
// console.log(typeof ([])) // array
// console.log(typeof (new Date())) // date
// console.log(typeof (new RegExp())) //RegExp
// instanceof 可以检测数据类型 // 返回的值是布尔类型
// instanceof的作用 就是检测构造函数的prototype 和实例的原型 _proto_是否相等
var num = 100
var num1 = new Number(100)
var obj = {}
var arr = []
console.log(num instanceof Number, '00')
console.log(num1 instanceof Number, '11')
// console.log(obj instanceof Object)
// console.log(arr instanceof Array)
// 万能检测数据类型
// console.log(Object.prototype.toString.call('要检测的数据类型'))
// console.log(Object.prototype.toString.call(100))
// console.log(Object.prototype.toString.call(true))
// console.log(Object.prototype.toString.call(undefined))
// console.log(Object.prototype.toString.call(null))
// console.log(Object.prototype.toString.call({}))
// console.log(Object.prototype.toString.call([]))
// console.log(Object.prototype.toString.call(new Date()))
// console.log(Object.prototype.toString.call(new RegExp()))
</script>
</body>
</html>