当前位置:网站首页>JS method of judging object type_ How to use typeof_ How to use instanceof_ How to use constructor_ Object.prototype.toString How to use ()
JS method of judging object type_ How to use typeof_ How to use instanceof_ How to use constructor_ Object.prototype.toString How to use ()
2020-11-09 12:58:00 【http://www.google.com/sea....tin-round+rock+texas】
JS How to judge the object type
typeof
typeof Method There's a... on the right data You can return the data type of this data Be careful typeof It's not the way No need to add ()
The returned data types are string( character string ) number( Numbers ) object( object )array( Array )boolean( Boolean )null( empty )undefined( Undefined )
var x = []
var y = {}
var z =null
var a
console.log( typeof 'aaa') // string
console.log( typeof 123) // number
console.log( typeof true) // boolean
console.log( typeof a) // undefined
console.log( typeof b) // undefined It's also undeclared undefined
console.log( typeof x) // object Arrays are also objects But with typeof Can't detect array
console.log( typeof y) // object
console.log( typeof z) // object null It's an empty object use typeof Detection is also the object
instanceof
instanceof Used to determine instanceof front Of data whether by instanceof after The type of Returns a Boolean value No need to add () however instanceof Can only be used to detect objects
var x = []
var y = {}
var z =null
var a = 'aaa'
console.log(x instanceof Object) //true Arrays are also objects
console.log(x instanceof Array) //true
console.log(y instanceof Object) //true
console.log(y instanceof Array) //false But arrays don't have to be objects
console.log(z instanceof Object) //false use instanceof Detecting empty objects It can't be detected
console.log(a instanceof String) //false instanceof It can only be used to judge objects Invalid for Strings
constructor
constructor It's through the prototype chain Can be used to find objects and common data Compared with instanceof and typeof It will be more precise
var x = []
var y = {}
var z = Date()
var a = 'aaa'
console.log(x.constructor==Object) //false ad locum Arrays are not recognized as objects
console.log(x.constructor==Array) //true
console.log(y.constructor==Object) //true
console.log(a.constructor==String) //true Strings can be recognized normally
console.log(z.constructor==Object) //false Time objects are not recognized as objects
console.log(z.constructor==Date) // true
Object.prototype.toString()
Object.prototype.toString() yes Object The archetypal approach Compared with the above three More accurate
var x = []
var y = {}
var z = new Date()
var a = 'aaa'
console.log(Object.prototype.toString.call(x)) //[object Array]
console.log(Object.prototype.toString.call(y)) //[object Object]
console.log(Object.prototype.toString.call(z)) //[object Date]
console.log(Object.prototype.toString.call(a)) //[object String]
版权声明
本文为[http://www.google.com/sea....tin-round+rock+texas]所创,转载请带上原文链接,感谢
边栏推荐
- inet_pton()和inet_ntop()函数详解
- Interface tests how to pass files in post requests
- 嗯,查询滑动窗口最大值的这4种方法不错....
- Idea rest client, yes, I haven't opened postman yet
- Visual Studio (MAC) installation process notes
- Efficient estimation of word representations in vector space
- Fedora 33 Workstation 的新功能
- Reduce of Flink
- 使用TreeView树型菜单栏(递归调用数据库自动创建菜单)
- Android Studio Avd「真·小白食用方法」
猜你喜欢
Navigation component of Android architecture (2)
Decrypting the future database design: implementation of mongodb's new storage engine wiredtiger (transaction)
New features of Fedora 33 workstation
Why I strongly recommend custom development of small programs, these benefits you need to understand
Vscode plug-in configuration pointing North
外贸自建网站域名的选择— Namesilo 域名购买
基于synchronized锁的深度解析
Efficient estimation of word representations in vector space
Fedora 33 Workstation 的新功能
After SQL group query, get the first n records of each group
随机推荐
外贸自建网站域名的选择— Namesilo 域名购买
Tutorial system unity online course double 11 preferential registration is in progress
Is multithreading really faster than single threading?
Three practical skills of Medical Project Management
The use of Android studio Aidl
解决IDEA快捷键 Alt+Insert 失效的问题
JVM学习(五) -执行子系统
Android架构之Navigation组件(二)
在嵌入式设备中实现webrtc的第三种方式③
Implement crud operation
Configure switch trunk interface traffic local priority forwarding (cluster / stack)
Android Studio Avd「真·小白食用方法」
JVM learning (4) - garbage collector and memory allocation
IDEA rest-client,会了它我还没打开过postman
Interface tests how to pass files in post requests
解密未来数据库设计:MongoDB新存储引擎WiredTiger实现(事务篇)
导师制Processing网课 双十一优惠进行中
Efficient Estimation of Word Representations in Vector Space 论文笔记
JVM learning (5) - execution subsystem
03.优先链接模型