首页 > 试题广场 >

编写一个函数判断参数是否是数组类型,如果是返回 true

[问答题]
编写一个函数判断参数是否是数组类型,如果是返回 true
方法一:
function isArray(arg){
return (arg instanceof Array);
}
方法二:
function isArray(arg){
return Object.prototype.toString.call(arg) == '[object Array]' ? true : false;
}
方法三:
function isArray(arg){
return arg.__proto__.constructor.name == 'Array' ?true : false;
}

编辑于 2018-08-10 23:23:11 回复(0)
function judgeArr(arr){
    console.log(typeof arr);    console.log(Array.isArray(arr)); console.log(Object.prototype.toString.call(arr)); console.log(); } judgeArr([]); judgeArr({}); judgeArr(''); judgeArr(1);
还是检验一下吧,typeof arr会把Array和Object都返回true,而Array.isArray和Obejct.prototype.toString则会判断正确,所以正确答案应该为
function judgeArr(arr){ return Array.isArray(arr); //或者 Object.prototype.toString.call(arr) == '[object Array]' }

发表于 2018-08-01 22:04:41 回复(0)
1.typeof只能识别原始类型、function和object,无法进一步识别object中的不同对象类型;
2.验证原型对象:var bool=father.isprototypeof(child);
3.检查内部属性class:Object.prototype.toString.call(obj);
4.Array.isArray(obj)
发表于 2018-09-18 08:51:58 回复(0)
Object.prototype.toString.call(param) === '[object Array]'
发表于 2018-09-07 15:40:36 回复(0)
function judge(arr){
if(typeOf(arr)=="object"){
document.write("true"){
else{
document.write("flase")}
}
}
var arr=[1,2,3];
judge(arr);

编辑于 2018-08-16 21:30:39 回复(0)
let foo=(arr)=>{
     return arr instanceof Array; 
}
发表于 2018-08-10 16:26:26 回复(0)
function isArray(arg) { return Object.prototype.toString.call(arg).slice(8, -1) === 'Array' ? true : false;
}
发表于 2018-08-07 09:39:11 回复(0)
const isArray=(arg)=>{
    returnObject.prototype.toString.call(arg).slice(8,-1)==='Array'?true:false;  
}
发表于 2018-08-04 21:38:41 回复(0)
function testArray(arr) {
    return (arr instanceof Array);
}
发表于 2018-08-03 18:14:07 回复(0)

function isArray(param){
   return param.__proto__.constructor === [].__proto__.constructor ? "true": "false"
}


发表于 2018-08-02 19:07:26 回复(0)
function judge(arr){
    if( typeof(arr) == "object" ){
        document.write("true");
}else{
    document.write("false");
}
}
var arr = [1,2,3];
judge(arr);
发表于 2018-07-30 16:02:03 回复(0)
functiona(arr){ if(typeof(arr)=="object"){ document.write("true");
}else{ document.write("false");
} } vararr=[1,2,3];
a(arr);
发表于 2018-07-25 10:38:46 回复(1)