typeof和instanceof之间有什么区别,什么时候应该使用vs?

farinspace:

在我的情况下:

callback instanceof Function

要么

typeof callback == "function"

甚至有关系吗,有什么区别?

附加资源:

JavaScript-花园typeofinstanceof

SzymonWygnański:

使用instanceof自定义类型:

var ClassFirst = function () {};
var ClassSecond = function () {};
var instance = new ClassFirst();
typeof instance; // object
typeof instance == 'ClassFirst'; // false
instance instanceof Object; // true
instance instanceof ClassFirst; // true
instance instanceof ClassSecond; // false 

使用typeof了内置的简单类型:

'example string' instanceof String; // false
typeof 'example string' == 'string'; // true

'example string' instanceof Object; // false
typeof 'example string' == 'object'; // false

true instanceof Boolean; // false
typeof true == 'boolean'; // true

99.99 instanceof Number; // false
typeof 99.99 == 'number'; // true

function() {} instanceof Function; // true
typeof function() {} == 'function'; // true

使用instanceof复杂的内建类型:

/regularexpression/ instanceof RegExp; // true
typeof /regularexpression/; // object

[] instanceof Array; // true
typeof []; //object

{} instanceof Object; // true
typeof {}; // object

最后一个有点棘手:

typeof null; // object

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

set,export和env之间有什么区别?什么时候应该使用它们?

RSpec的主题和let之间有什么区别?什么时候应该使用它们?

在React组件中,foo(){}和bar =()=> {}之间有什么区别,我什么时候应该使用?

Koa:koa-route和koa-mount之间有什么区别?我什么时候应该使用每个?

什么时候应该使用GET或POST方法?它们之间有什么区别?

DatatypeProperty,ObjectProperty和FunctionalProperty有什么区别,什么时候应该使用它们?

CSS中的id和class有什么区别,什么时候应该使用它们?

`cat EOF` 和 `cat EOT` 有什么区别,我应该什么时候使用它?

“参数”和“数组参数”之间有什么区别,什么时候应使用?

混合订单管理和履行扩展之间有什么区别?什么时候应该使用哪一个?

什么时候应该使用带有输入的 ng-content 和组件模板,有什么区别?

Kotlin中的.kt和.kts文件有什么区别。什么时候应该使用.kts文件而不是.kt文件?

MVC 6视图组件与部分视图:有什么区别?什么时候应该使用?

Java类FileSystem和FileSystems之间有什么区别?什么时候使用另一个?

OAuth授权代码和隐式工作流程之间有什么区别?什么时候使用每个?

什么时候应该使用instanceof?

Akka中的Typed和UnTyped Actor有什么区别?什么时候使用什么?

NUnit中的TypeOf和InstanceOf有什么区别?

Azure搜索和Bing搜索有什么区别?什么时候使用?

NSObject和AnyObject有什么区别?什么时候使用两者?

after_create和after_save有什么区别,什么时候使用?

什么时候使用,计时器和线程有什么区别?

反应功能性无状态组件,PureComponent,Component;有什么区别,什么时候应该使用什么?

什么时候应该使用逻辑回归和KNN进行分类? 换句话说,两者的用法有什么区别?

Python:(1,2,3)和[1,2,3]有什么区别,什么时候应该使用它们?

Android的Html.escapeHtml和TextUtils.htmlEncode有什么区别?什么时候应该使用其中一个?

“ instanceof”和“ in”关键字之间有什么区别?

FormGroup 和 FormArray 有什么区别?什么时候用什么?

什么时候应该使用<或<()或<<和>或>()?