// 使用 typeof 操作符查看基本类型
let num = 42;
let str = "Hello";
let bool = true;
let undef = undefined;
let nul = null;
console.log(typeof num); // "number"
console.log(typeof str); // "string"
console.log(typeof bool); // "boolean"
console.log(typeof undef); // "undefined"
console.log(typeof nul); // "object" (这是一个历史遗留问题,null 被认为是 object)
// 使用 instanceof 操作符查看对象类型
let arr = [1, 2, 3];
let obj = { a: 1 };
let date = new Date();
let func = function() {};
console.log(arr instanceof Array); // true
console.log(obj instanceof Object); // true
console.log(date instanceof Date); // true
console.log(func instanceof Function); // true
// 使用 Object.prototype.toString.call 查看更详细的类型信息
console.log(Object.prototype.toString.call(num)); // "[object Number]"
console.log(Object.prototype.toString.call(str)); // "[object String]"
console.log(Object.prototype.toString.call(bool)); // "[object Boolean]"
console.log(Object.prototype.toString.call(undef)); // "[object Undefined]"
console.log(Object.prototype.toString.call(nul)); // "[object Null]"
console.log(Object.prototype.toString.call(arr)); // "[object Array]"
console.log(Object.prototype.toString.call(obj)); // "[object Object]"
console.log(Object.prototype.toString.call(date)); // "[object Date]"
console.log(Object.prototype.toString.call(func)); // "[object Function]"
typeof
操作符:用于检查基本数据类型(如 number
, string
, boolean
, undefined
),但对于 null
和某些复杂类型(如数组、对象)的返回结果可能不够准确。instanceof
操作符:用于检查对象是否为某个构造函数的实例。适用于自定义对象和内置对象(如 Array
, Date
, Function
等)。Object.prototype.toString.call()
:这是最可靠的方式,可以准确地识别所有类型的对象,包括基本类型、数组、日期、函数等。它返回一个表示类型的字符串。上一篇:js 获取对象类型
下一篇:js 遍历 对象
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站