文档章节

利用js的prototype属性给数组去重

零七九三
 零七九三
发布于 2016/06/08 17:31
字数 219
阅读 6
收藏 0
在项目中,我们在处理数据的时候经常需要去重复数据,以便归结或者其它:
Array.prototype.distinct = function () {
		var a = {}, c = [], l = this.length;
		for (var i = 0; i < l; i++) {
			var b = this[i];
			var d = (typeof b) + b;
			if (a[d] === undefined) {
				c.push(b);
				a[d] = 1;
			}
		}
		return c;
	}
	var arr = ["白色","白色","红色","黑色","红色"];
	console.log(arr.distinct());//白色, 红色, 黑色
//javascript中的prototype属性使用说明(函数功能扩展)
	//此处的prototype,不是指著名的prototype.js框架,而是Javascript中的prototype属性
	//Javascript中的继承一般都依赖这个特殊的属性
	//在Javascript中,一切都是对象,字符串是对象,数组是对象,变量是对象,函数也是对象,
	//所以才会允许['a','b','c'].push('d');这样的操作存在。类本身也是一个对象,也可以定义属性和方法:

© 著作权归作者所有

共有 人打赏支持
零七九三
粉丝 0
博文 90
码字总数 18211
作品 0
杭州
前端工程师
私信 提问
前端面试之JavaScript

1. JS基本的数据类型和引用类型 基本数据类型:number、string、null、undefined、boolean、symbol -- 栈 引用数据类型:object、array、function -- 堆 两种数据类型存储位置不同 原始数据类...

大灰狼的小绵羊哥哥
2018/08/27
0
0
JavaScript继承详解(二)

文章截图 - 更好的排版 这一章我们将会重点介绍JavaScript中几个重要的属性(this、constructor、prototype), 这些属性对于我们理解如何实现JavaScript中的类和继承起着至关重要的作用。 ...

solu
2010/12/22
0
0
前端高频面试题 JavaScript篇

以下问题都来自于互联网前端面经分享,回答为笔者通过查阅资料加上自身理解总结,不保证解答的准确性,有兴趣讨论的同学可以留言或者私信讨论。 1.JS的异步机制? 2.闭包如何实现? 3.原型链、...

大雄的学习人生
2018/06/25
0
0
js prototype的理解

prototype属性可算是JavaScript与其他面向对象语言的一大不同之处。prototype就是“一个给类的对象添加方法的方法”,使用prototype属性,可以给类动态地添加方法,以便在JavaScript中实现“...

别人说我名字很长
2014/05/15
0
0
javascript for...in

在JS中我们最常见的循环语句是循环语句,一个简单的循环语句如下: 不过在JS中还有一种非常实用的循环语句叫,通常用来遍历数组或对象的属性. 因为发现小伙伴在使用的时候经常会踩坑,这里再次强...

taadis
2017/12/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

day22:

1、写一个getinterface.sh 脚本可以接受选项[i,I],完成下面任务: 1)使用格式:getinterface.sh [-i interface | -I ip] 2)当用户使用-i选项时,显示指定网卡的IP地址;当用户使用-I选项...

芬野de博客
28分钟前
1
0
Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注。虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭借阿里中间件团队的背景,还是得到不少...

程序猿DD
31分钟前
2
0
Java并发编程:深入剖析ThreadLocal

ThreadLocal 的理解 ThreadLocal,很多地方叫线程本地变量,或线程本地存储。ThreadLocal为变量在每个线程中都创建了一个副本,每个线程可以访问自己内部的副本变量。===》解决的问题是线程间...

细节探索者
38分钟前
1
0
【Python3之异常处理】

一、错误和异常 1.错误 代码运行前的语法或者逻辑错误 语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) def test: ^SyntaxError: invalid...

dragon_tech
今天
2
0
编写可维护的 JavaScript

几乎每个程序员都有接手维护别人遗留项目的经历。或者,有可能一个老项目某一天又被重新启动。 通常情况下,接手老项目都会让人恨不得抛弃掉整个代码库从头开始。老代码凌乱、文档缺失、需要...

前端小攻略
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部