一些算法
文章平均质量分 55
那一日面朝大海
好久不见 -q1367156312
展开
-
JS日常开发的写法技巧1
1.使用 const 定义在开发中不要过度声明变量,尽量使用表达式和链式调用形式。然后一般能用 const 就不要用 let 。这种模式写多了之后,你会发现在项目中几乎找不到几个用 let 的地方:// badlet result = false;if (userInfo.age > 30) { result = true;}// goodconst result = userInfo.age > 30;复制代码在项目中很多同事都会这样写,handleForm原创 2022-02-09 16:04:55 · 387 阅读 · 0 评论 -
数组常用操作总结1
1创建数组创建数组是基本功,其方法主要包括以下几种:const arr = [1,2,3] // 数组字面量const arr = [,,,] // 三元素空位数组(hole array)const arr = new Array(4) // [,,,,]const arr = new Array(4,2) // [4,2]const arr = Array.of(1原创 2022-02-09 15:37:31 · 258 阅读 · 0 评论 -
js的reduce的一些用法总结
reduce方法是JavaScript中一个比较强大的方法,可能在平时开发中,有人根本没用过,通过下面的8个例子,学会reduce的用法以及它的常用场景。reduce方法是一个数组的迭代方法,和map、filter不同,reduce方法可缓存一个变量,迭代时我们可以操作这个变量,然后返回它。这是我大白话的解释,可能还是不容易理解,下面看例子吧1. 数组累加数组累加是项目经常遇到的,比如计算商品总价等,使用reduce就可以一行代码搞定,而且不用定义外部变量,reduce是完全无副作用的函数。原创 2021-09-24 13:49:48 · 1776 阅读 · 0 评论 -
JS数组方法温习2
用不好数组的程序猿不是一个好猿,我说的~前段时间接手一个项目,逻辑晦涩难懂,代码庞大冗余,上手极其困难。很大的原因就是数组方法使用不熟练,导致写出了很多垃圾代码,其实很多地方稍加改动就可以变得简单高效又优雅。因此我在这里总结下数组的常用方法和奇巧淫技(奇巧淫技主要是reduce~)。数组操作首先要注意且牢记splice、sort、reverse这3个常用方法是对数组自身的操作,会改变数组自身。其他会改变自身的方法是增删push/pop/unshift/shift、填充fill和复制填充copyW.原创 2020-11-23 13:18:09 · 283 阅读 · 0 评论 -
前端的一些算法(常用排序,多维数组扁平,树的遍历)
一:常见排序算法冒泡排序:function bubbleSort(arr) { var len = arr.length; for (var i = 0; i < len; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j+1]) { //相邻元素两两对比 var temp = arr[j+1];原创 2020-11-11 16:21:16 · 238 阅读 · 0 评论 -
js数组常用方法温习
整理了以下数组方法join() push()和pop() shift() 和 unshift() sort() reverse() concat() slice() splice() indexOf()和 lastIndexOf() (ES5新增) forEach() (ES5新增) map() (ES5新增) filter() (ES5新增) every() (ES5新增) some() (ES5新增)1:join()join,就是把数组转换成字符串,然后给他规定个连接原创 2020-11-05 14:54:50 · 239 阅读 · 0 评论 -
JS截取字符串方法和对象判空
js对象判断是否为空:1.es6中可以使用Object.keys(obj)var data = {};var arr = Object.keys(data);alert(arr.length == 0); //true 为空, false 不为空2.将json对象转化为json字符串,再判断该字符串是否为"{}"var data = {};var b = (JSON.stringify(data) == "{}");alert(b); //true 为空, false 不为原创 2020-09-27 10:47:45 · 486 阅读 · 0 评论 -
15个必须知道的JavaScript数组方法
在JavaScript中,数组是一个特殊的变量,用于存储不同的元素。它具有一些内置属性和方法,可用于根据需要添加,删除,迭代或操作数。并且了解JavaScript数组方法可以提升你的开发技能。j今天,我们介绍15种关于JavaScript的数组方法,这些方法可以帮助你正确地处理数据。 1.some() 2. reduce() 3. Every() 4. map() 5. flat() 6. filter() 7. forEach()原创 2020-09-10 13:55:43 · 139 阅读 · 0 评论 -
把数组中特定key一样的元素放在一个元素(数组)里
sortArr(arr, str) { var _arr = [], _t = [], _tmp = arr[0][str]; // 按照特定的参数将数组排序将具有相同值得排在一起 arr = arr.sort(function(a, b) { var s = a[str], t = b[str]; .原创 2020-07-13 11:10:21 · 895 阅读 · 0 评论 -
两个数组比较取出多余的部分,减去重复的部分
两个数组比较取出多余的部分:let jianshao = '' //减少的for(let item of oldVal) { let stra = item; let count = 0; for(let j = 0; j < val.length; j++) { let strb = val[j]; if(stra == strb) { count++; } } if(count原创 2020-07-13 10:34:44 · 1539 阅读 · 0 评论 -
5个很实用的数组迭代方法
学习数组迭代方法every() 迭代数组每一项,每项都符合条件的才返回true,反之false some() 迭代数组每一项,只要有一项符合条件就返回true,如果全部不符合才返回false map() 迭代数组每一项,可以给特定条件会返回重新组成新的数组 filter() 迭代数组每一项,可以给特定的条件进行筛选返回新的数组 forEach() 迭代数组每一项,没有返回值every()every() 方法,对数组中的每一项进行迭代,如果每一项都符合条件才可以返回true,反之返回fals转载 2020-07-13 10:15:32 · 1263 阅读 · 0 评论 -
删掉数组中包含另一个数组值的项?
total_data[ {c_revenue: "9.2000",c_total_revenue: "2.0000",sid: "22061"}, {c_revenue: "26352.4800", c_total_revenue: "4774.0000", sid: "22078"}, {c_revenue: "88666.4800", c_total_revenue...原创 2020-04-15 11:03:57 · 372 阅读 · 0 评论 -
数组去重的一些方法
1.将数组的每一个元素依次与其他元素做比较,发现重复元素,利用数组方法splice()删除重复元素 var arr = [1,23,1,1,1,3,23,5,6,7,9,9,8,5,5,5,5]; function norepeat(arr) { for(var i = 0; i < arr.length-1; i++){ for(var ...转载 2020-04-15 10:57:09 · 165 阅读 · 0 评论 -
js数组遍历总结
js中的数组遍历是项目中经常用到的,在这里将几种方法做个对比。for循环:使用频率最高,也是最基本的一种遍历方式。let arr = ['a','b','c','d','e'];for (let i = 0, len = arr.length; i < len; i++) { console.log(i); // 0 1 2 3 4 console....原创 2019-07-12 10:39:02 · 340 阅读 · 0 评论 -
JS家的排序算法
十大经典算法排序总结对比一张图概括:主流排序算法概览名词解释:n: 数据规模k:“桶”的个数In-place: 占用常数内存,不占用额外内存Out-place: 占用额外内存稳定性:排序后2个相等键值的顺序和排序之前它们的顺序相同冒泡排序(Bubble Sort)冒泡排序须知:作为最简单的排序算法之一,冒泡排序给我的感觉就像Abandon在单词书里出现的感觉一样,每...转载 2019-11-19 15:35:57 · 196 阅读 · 0 评论 -
总结js实现对象数组的浅拷贝和深拷贝
深拷贝 VS 浅拷贝深拷贝和浅拷贝都是针对的引用类型,JS中的变量类型分为值类型(基本类型)和引用类型;对值类型进行复制操作会对值进行一份拷贝,而对引用类型赋值,则会进行地址的拷贝,最终两个变量指向同一份数据。// 基本类型var a = 1;var b = a;a = 2;console.log(a, b); // 2, 1 ,a b指向不同的数据// 引用类型指向同一份数...原创 2019-11-29 10:35:04 · 769 阅读 · 0 评论 -
JS 数组求和的一些方法
1.递归unction sum(arr) { var len = arr.length; if(len == 0){ return 0; } else if (len == 1){ return arr[0]; } else { return arr[0] + sum(arr.slice(1)); }}...原创 2020-04-15 10:44:18 · 276 阅读 · 0 评论