如何检查 JavaScript 变量类型?

JavaScript 构造函数 继承 原型链 类型检查 类型转换 iframe

JavaScript 基本数据类型有 6 种:字符串、数字、布尔、null、undefined、Symbol。 用户定义的类型(object)并没有类的声明,因此继承关系只能通过构造函数和原型链来检查。 本文要解决的问题,如何检查一个变量的类型?先给结论:

如果你要判断的是基本数据类型或JavaScript内置对象,使用toString; 如果要判断的时自定义类型,请使用instanceof

不同的编程语言都有自己的方式来提供类型信息,例如C#的反射、C++的Traits, JavaScript提供类型信息的方式更加灵活,因而也容易产生很多误用。 下面来分析常见类型检查手段的区别:typeof, instanceof, constructor, toString。

如果你在寻找类型转换的解决方案,而非类型检查,请移步JavaScript类型转换

Item 44:将参数无关代码重构到模板外去

Effective-C++ C++ 内存 多态 模板

把模板中参数无关的代码重构到模板外便可以有效地控制模板产生的代码膨胀。另外代码膨胀也可以由类型模板参数产生:对于非类型模板参数产生的代码膨胀,用函数参数或数据成员来代替模板参数即可消除冗余;对于类型模板参数产生的代码膨胀,可以让不同实例化的模板类共用同样的二进制表示。

导航: 上一页 下一页

加载中...

🔝