for(var i= 0;i<len;i++){
// 数组1的类型列表字串
var item1 = arr1[i], typeFirst = typeOf(item1);
if(key1.indexOf(typeFirst)<0){
key1.push(typeFirst);
}
// 数组2的类型列表字串
var item2 = arr2[i],typeSecond = typeOf(item2);
if(key2.join().indexOf(typeSecond)<0){
key2.push(typeSecond);
}
}
key1 = key1.sort();
key2 = key2.sort();
// 类型字串比较
key2.join().indexOf(typeSecond)
key2..indexOf(typeSecond)
结果是一样的,indexOf不应该是对 字符串使用的么,为什么对数组也可以直接使用了呢
这样做有隐患么,这其中是隐性转化还是原型链的原因
indexOf()也可以用在数组上的。https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf
因为key1=key1.sort(),sort()返回的就是字符串
字符串也可以看成是数组的一种,很多的方法可以相互使用,效果可视为字符串是字符数组