2014년 6월 30일 월요일

Checking Types in JavaScript

* typeof operator

TypeResult
Undefined"undefined"
Null"object"
Boolean"boolean"
Number"number"
String"string"
Host object (provided by the JS environment)Implementation-dependent
Function object (implements [[Call]] in ECMA-262 terms)"function"
Any other object"object"
typeof 3 // "number"
typeof "abc" // "string"
typeof {} // "object"
typeof true // "boolean"
typeof undefined // "undefined"
typeof function(){} // "function"
typeof [] // "object"
typeof null // "object"

=================================================

* instanceof operator

function Animal(){}
var a = new Animal()
a instanceof Animal // true
a.constructor === Animal // true

function Cat(){}
Cat.prototype = new Animal
Cat.prototype.constructor = Cat
var felix = new Cat
felix instanceof Cat // true
felix instanceof Animal // true
felix.constructor === Cat // true
felix.constructor === Animal // false

felix = null
felix instanceof Animal // true
felix.constructor === Animal // throws TypeError

-------------------------------------------------
[1, 2, 3] instanceof Array // true
/abc/ instanceof RegExp // true
({}) instanceof Object // true
(function(){}) instanceof Function // true

null instanceof Boolean // false
undefined instanceof Array // false

3 instanceof Number // false
true instanceof Boolean // false
'abc' instanceof String // false
(3).constructor === Number // true
true.constructor === Boolean // true
'abc'.constructor === String // true



출처 :
http://tobyho.com/2011/01/28/checking-types-in-javascript/
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/instanceof

댓글 없음:

댓글 쓰기