var arr = [1,2,3,4];
var likeArr = {
    '0':'a',
    '1':'b',
    '2':'c',
    length:3
};

1.判断数组类型:
arr instanceof Array;//true
Array.isArray(arr);//true
Object.prototype.toString.call(arr); //'[object Array]'
2.将类数组转成数组
1.[].slice.call()

var fn = function(likeArr){
    var arr = Array.prototype.slice.call(likeArr);
    //或者:var arr = [].slice.call(arguments);
    return arr;
}

2.Array.from()

var fn = function(likeArr){
    var arr = Array.from(likeArr)
    return arr;
}

3.扩展运算符(...)

//转换arguments
var fn = function(){
    var args = [...arguments];
}

兼容写法

function toArray(likeArr){
    if(Array.from){
        return Array.from(likeArr)
    }else{
        return [].slice.call(likeArr)
    }
}