数组去重
<!-- 数组去重 -->
// 方法1 利用对象属性名不重复的特性
function arrayUnique(arr) {
var l = arr.length;
var obj = {};
var retArr = [];
for(var i = 0; i < l; i++) {
if(!obj[arr[i]]) {
obj[arr[i]] = 'a';
retArr.push(arr[i]);
}
}
return retArr;
}
//方法2 利用双层循环
function arrayUnique1(arr) {
var l = arr.length;
var retArr = arr[0];
var flag = false;
for(var i = 0; i < l; i++) {
for (var j = 0; j < retArr.length; j++) {
if (arr[i] === retArr[j]) {
flag = true;
}
}
if(flag == false) {
retArr.push(arr[i]);
}
}
return retArr;
}
类型检测
<!-- 类型检测 -->
function testType(target) {
var type = typeof(target);
var temp = Object.prototype.toString;
var template = {
"[object Array]": "array",
"[object Number]": "Number",
"[object Boolean]": "Boolean",
"[object String]": "String",
"[object Object]": "Object",
};
if(target == null) {
return "null";
} else if(type == "object") {
var str = temp.call(target);
return template[str];
} else {
return typeof(target);
}
}