代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>判断数据类型</title>
</head>
<body>
</body>
<script>
// JS数据类型:String、Number、Boolean、Undefined、Null、Array、Object、Function、Symbol;
// 值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。
// 引用数据类型:对象(Object)、数组(Array)、函数(Function)。
// 注:Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。
let str = '1';
let sir= String('1')
let num = 1;
let nums=Number(1)
let boo = true;
let un=undefined;
let nul=null;
let sym = Symbol('only')
let arr = [1, 2, 3];
let obj = {name: 'little cute', age: 25}
let fun = function () {};
//typeof 类型
console.log(typeof str);//string
console.log(typeof sir);//string
console.log(typeof num);//number
console.log(typeof nums);//number
console.log(typeof boo);//boolean
console.log(typeof un);//undefined
console.log(typeof nul);//object
console.log(typeof sym);//symbol
console.log(typeof arr);//object
console.log(typeof obj);//object
console.log(typeof fun);//function
//instanceof 实例
console.log(str instanceof String)//false
console.log(sir instanceof String)//false
console.log(num instanceof Number)//false
console.log(nums instanceof Number)//false
console.log(boo instanceof Boolean)//false
console.log(boo instanceof Boolean)//false
console.log(sym instanceof Symbol)//false
console.log(arr instanceof Array)//true
console.log(obj instanceof Object)//true
console.log(fun instanceof Function)//true
//constructor 构造器
console.log(str.constructor===String)//true
console.log(sir.constructor===String)//true
console.log(num.constructor===Number)//true
console.log(nums.constructor===Number)//true
console.log(boo.constructor===Boolean)//true
console.log(sym.constructor===Symbol)//true
console.log(arr.constructor===Array)//true
console.log(obj.constructor===Object)//true
//Object.prototype.toString.call() 对象的原型
console.log(Object.prototype.toString.call(str))//[object String]
console.log(Object.prototype.toString.call(num))//[object Number]
console.log(Object.prototype.toString.call(boo))//[object Boolean]
console.log(Object.prototype.toString.call(un))//[object Undefined]
console.log(Object.prototype.toString.call(nul))//[object Null]
console.log(Object.prototype.toString.call(sym))//[object Symbol]
console.log(Object.prototype.toString.call(arr))//[object Array]
console.log(Object.prototype.toString.call(obj))//[object Object]
console.log(Object.prototype.toString.call(fun))//[object Function]
</script>