avatar

好久不写了

数组去重,直接写在数组原型链上

根据对象的一个特性,不能有重复的属性,根据这个特性进行去重(哈希去重)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var arr = [1,2,1,1,1,2,2,2,2,2,11,33,111,33,33,22,22,1,2,2,3,3,3,1,"aaa","aaa","bbb"]

Array.prototype.unique = function () {
var obj = {};
var array = [];
var len = this.length;
for(var i = 0;i<len;i++){
if(!obj[this[i]]){
obj[this[i]]="abc"
array.push(this[i]);
}
}
return array
}

写一个闭包

eg一个计数器

1
2
3
4
5
6
7
8
9
10
function test() { 
var count = 0;
function demo() {
count ++;
console.log(count);
}
return demo
}
var counter = test()
counter()

封装一个完善的typeof()方法 可以判断数组和对象 ,new Number() 显示 number-object

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function type(target) {
var template ={
"[object Array]" : "array",
"[object Object]" : "object",
"[object Number]" : "number-object",
"[object Boolean]" : "boolean-object",
"[object String]" : "string-object"

}
if(target == null){
return null;
}
if(typeof(target)=="object"){
var str = Object.prototype.toString.call(target);
return template[str];
}else{
return typeof(target);
}
}
文章作者: zhiwei
文章链接: https://zhiweichen.com/2018/09/26/好久不写了/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 至玮
打赏
  • 微信
    微信
  • 支付寶
    支付寶

评论