更可靠的能力检测
能力检测对于想知道某个特性是否会按照适当方式行事(而不仅仅是某个特性存在)非常有用。
javascript
//不要这样做!这不是能力检测——只检测了是否存在相应的方法
function isSortable(object) {
return !!object.sort;
}
更好的方式是检测 sort 是不是一个函数
javascript
//这样更好:检查 sort 是不是函数
function isSortable(object) {
return typeof object.sort == "function";
}
在可能的情况下,要尽量使用 typeof 进行能力检测。