一、问题 城市搜索历史问题(历史记录保存localStorage) - 用数组包裹城市对象(包含城市id和name),记录5条,不包含重复的城市,并且把最新的放置数组最前面 - 思路:判断是否有历史记录,即数组为空,空直接放入 - 非空,则判断最新城市对象是否已存在数组中,存在则数组去重并移到数组最 ...
分类:
编程语言 时间:
2019-08-17 01:06:05
阅读次数:
102
数组去重的方法 一、利用ES6 Set去重(ES6中最常用) 不考虑兼容性,这种去重的方法代码最少。这种方法还无法去掉“{}”空对象,后面的高阶方法会添加去掉重复“{}”的方法。 二、利用for嵌套for,然后splice去重(ES5中最常用) 双层循环,外层循环元素,内层循环时比较值。值相同时,则 ...
分类:
编程语言 时间:
2019-08-09 23:17:18
阅读次数:
122
第一种:哈希表的思想(性能最好) 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。 优点:不论哈希表中有多少数据,查找、插入、删除(有时包括删除)只需要接近常量的时间即 ...
分类:
编程语言 时间:
2019-08-09 21:26:18
阅读次数:
99
方法一 filter()+ indexOf( ) 方法二 push() + indexOf() 方法三 双重for循环 + splice() 或 双重for循环 + push() ...
分类:
编程语言 时间:
2019-08-07 22:18:45
阅读次数:
86
//数组去重方法1:let arr = [10,22,30,22,10,6,7,6]arr = arr.sort()let result = [arr[0]]for (let i=1, len=arr.length; i<len; i++) { arr[i] !== arr[i-1] && resu ...
分类:
编程语言 时间:
2019-08-01 13:08:30
阅读次数:
86
1:[...new Set(arr)] Array.from(new Set(arr)) 2: ...
分类:
编程语言 时间:
2019-07-29 21:33:18
阅读次数:
94
一、声明 let、const 1. let 1). 作用域是块级作用域(在ES6之前,js只存在函数作用域以及全局作用域) 2). 不存在变量声明提前; 3). 不能重复定义 4). 存在暂时性死区:可以这样来理解 ① 在一个块级作用域中,变量唯一存在,一旦在块级作用域中用let声明了一个变量,那么 ...
分类:
其他好文 时间:
2019-07-24 22:51:44
阅读次数:
204
var a = [3, 62, null, 0, 38, undefined, NaN,NaN, ' ', 38, " "]; //1.set+array 不能区别nan '' "" // 优点:代码简洁,速度快 时间复杂度O(N) //缺点:需要一个额外的set和array的存储空间,空间复杂度 ...
分类:
编程语言 时间:
2019-07-24 13:02:28
阅读次数:
104
好程序员分享JavaScrip数组去重操作实例小结,这篇文章主要介绍了JavaScrip数组去重操作,结合实例形式总结分析了javascript针对数组的遍历、判断、去重等相关操作技巧,需要的朋友可以参考下。 本文实例讲述了JavaScrip数组去重操作。分享给大家供大家参考,具体如下: 内置的fo ...
分类:
编程语言 时间:
2019-07-22 18:29:44
阅读次数:
138