JavaScript基础---typeof和instanceof的区别

typeof和instanceof都用于类型检查

区别:typeof返回的是字符串,而instanceof返回的是布尔值

javascript 复制代码
console.log(typeof 42); // "number"
console.log(typeof "Hello"); // "string"
console.log(typeof true); // "boolean"
console.log(typeof undefined); // "undefined"
console.log(typeof Symbol("symbol")); // "symbol"
console.log(typeof {}); // "object"
console.log(typeof function() {}); // "function"
javascript 复制代码
function Person(name) {
  this.name = name;
}
 
const person = new Person("Alice");
console.log(person instanceof Person); // true
 
const obj = {};
console.log(obj instanceof Object); // true
 
const arr = [];
console.log(arr instanceof Array); // true

typeof操作符用于确定变量或表达式的数据类型。它返回一个字符串,表示传入值的数据类型。常见的返回值包括:"number"、"string"、"boolean"、"undefined"、"symbol"、"object"和"function"。

注意:instanceof操作符只能检测对象的原型链,而不能检测基本数据类型

javascript 复制代码
let a = 1;
console.log(typeof a)    //number
console.log(a instanceof Number)   //false

以上,typeof适用于基本数据类型和函数类型,而instanceof适用于对象实例的检查

特殊注意:typeof null返回"object",这是JavaScript中的一个历史遗留问题

相关推荐
筱璦几秒前
C#期货分仓、策略交易模拟演示系统(含资源下载)
开发语言·c#·策略模式·量化交易·期货交易
天才熊猫君1 分钟前
通用 Loading 状态管理器
前端·javascript·vue.js
froginwe113 分钟前
Highcharts 测量图:全面解析与优化实践
开发语言
胡志辉4 分钟前
网络七层到底怎么落到一次前端请求上:从浏览器到网卡,再到远端服务器
前端·网络协议
怪兽同学5 分钟前
统一管理Agent Skills
前端·agent
雪芽蓝域zzs6 分钟前
uni-app x 使用 UTS 语言使用 mixins
开发语言·javascript·uni-app
陆枫Larry10 分钟前
微信小程序订阅消息完全指南:从原理到落地的全流程梳理
前端
DaqunChen20 分钟前
全栈开发的演变:从LAMP到MEAN再到现代JavaScript
开发语言·javascript·ecmascript
Camellia-lon25 分钟前
jQuery购物车实现:从入门到精通
前端·javascript·jquery
Fate_I_C25 分钟前
Kotlin 特有语法糖
android·开发语言·kotlin