随记001:判断输出类型
如下程序代码输出为:?
function output(a){
console.log(a);
}
output(typeof console.log);
测试以上代码输出的结果:
console.log(a); ==> console.log(typeof console.log);//function
=> console.log是一个函数
补充: console为Object对象
拓展知识点:
typeof 能判断的输出类型:
undefined、string、number、boolean、function、object、symbol(ES6新增)
typeof判断类型需要注意:
-
判断原始类型时,除null都可以准确判断;
typeof(null);
输出:"object"
-
判断引用类型(普通Object、Array、Function、Math、Date、RegExp)时,除function(返回
"function"
)外,其他均返回"object"
;无法区别数组与普通对象:
typeof([]);
输出为:"object"
-
typeof(NaN);
输出:"number"
-
判断未定义变量的类型不会报错且会返回
"undefined"
-
typeof(typeof(undefined));
输出为:"string"
其他可判断类型的方法:
Array.isArray()
检查是否是一个数组,使用Array.isArray(arr)
进行判断:
arr是数组 => true
;否则 => false
…未完待续…