js判断类型

js判断类型1 instanceof 运算符判断类型 functionAaa 父类 this name 小明 leta newAaa letstr newString asd letstr2 asdf letobj name 小明

1)instanceof运算符判断类型

function Aaa(){ //父类 this.name = '小明' } let a = new Aaa() let str = new String('asd'); let str2 = 'asdf'; let obj = {name:'小明'}; let arr = []; let bool = new Boolean(false); let bool2 = true; let num = new Number(456); let num2 = 456; console.log(a instanceof Object) // true console.log(a instanceof Aaa) // true console.log(str instanceof String) // true console.log(str instanceof Object) // true console.log(str2 instanceof String) // false console.log(str2 instanceof Object) // false console.log(obj instanceof Object) // true console.log(arr instanceof Array) // true console.log(arr instanceof Object) // true console.log(bool instanceof Boolean) // true console.log(bool instanceof Object) // true console.log(bool2 instanceof Boolean) // false console.log(bool2 instanceof Object) // false console.log(num instanceof Number) // true console.log(num instanceof Object) // true console.log(num2 instanceof Number) // false console.log(num2 instanceof Object) // false 

2)利用Object原型上的toString方法判断,最准确

function Aaa(){ //父类 this.name = '小明' } let a = new Aaa() let str = new String('asd'); let str2 = 'asdf'; let obj = {name:'小明'}; let arr = []; let bool = new Boolean(false); let bool2 = true; let num = new Number(456); let num2 = 456; console.log(Object.prototype.toString.call(a)) //'[object Object]' console.log(Object.prototype.toString.call(str)) //'[object String]' console.log(Object.prototype.toString.call(str2)) // '[object String]' console.log(Object.prototype.toString.call(obj))// '[object Object]' console.log(Object.prototype.toString.call(arr)) // '[object Array]' console.log(Object.prototype.toString.call(bool)) // '[object Boolean]' console.log(Object.prototype.toString.call(bool2)) //'[object Boolean]' console.log(Object.prototype.toString.call(num)) //'[object Number]' console.log(Object.prototype.toString.call(num2)) //'[object Number]' console.log(Object.prototype.toString.call(num2) == '[object Number]') //true 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203303.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午10:07
下一篇 2026年3月19日 下午10:07


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号