由于JavaScript是弱类型的,所以它不会做任何的自动类型检查,所以如果看到与null进行比较的代码,尝试使用以下技术替换:
如果值应为一个引用类型,使用 instanceof 操作符检查其构造函数
如果值应为一个基本类型,作用 typeof 检查其类型
如果是希望对象包含某个特定的方法名,则使用 typeof 操作符确保指定名字的方法存在于对象上
var a = [1];
var b = null;
var c = {};
c.hello = function() {};
a instanceof Array; // true
typeof b == "object"; // true
typeof d; // 'undefined'
typeof c.hello === 'function' // true