JS基础回顾,小练习(判断数组,以及函数)

追梦子博客版权所有。

// 判断arr是否为一个数组,返回一个bool值

方法1:

function isArray(arr) { var str = arr.__proto__.constructor; var reg = /function ([\w]+)\(/; return reg.exec(str)[1]==="Array"; } console.log(isArray([]))

方法2:

function isArray(arr) { var str = {}.toString.call(arr); var reg = /\[object (\w+)\]/; return reg.exec(str)[1]==="Array"; } console.log(isArray([]));

方法3:

function isArray(arr) { return arr instanceof Array; } console.log(isArray([])); // 此方法不建议使用,因为判断Object也返回true

方法4:

function isArray(arr) { return Array.prototype.isPrototypeOf(arr); } console.log(isArray([])); // 不建议使用,因为只要是有继承,都会返回true

// 判断fn是否为一个函数,返回一个bool值

 

方法1:

function isFunction(fn) { return (typeof fn)==="function"; } console.log(isFunction(function(){}))

其他方法和判断数组一样。

你可能感兴趣的:(JS基础回顾,小练习(判断数组,以及函数))