当前位置: 首页 > news >正文

优化for循环(js的问题)

性能优化

var array = [];for (let index = 0; index < array.length; index++) {// do something
}// 优化后
for (let index = 0, len = array.length; index < len; index++) {// do something
}

算法优化

// 求和:1 + 2 + 3 + 4 +... + 100
var sum = 0;
for (let i = 1; i <= 100; i++) {sum += i;
}
console.log(sum); // 5050// 等差数列公式求和公式 Sn=n(a1+an)/2
console.log(((1 + 100) * 100) / 2); // 5050

例题:找出两个数,和为11,返回下标

var list = [1, 7, 3, 4, 5, 6];

方式一:

var loop = 0;for (let i = 0; i < list.length; i++) {for (let j = 0; j < list.length; j++) {if (list[i] + list[j] == 11) {console.log(i, j);// 1 3, 3 1, 4 5, 5 4}console.log("loop", ++loop);// loop 36}
}

方式二:

var loop = 0;
for (let i = 0; i < list.length; i++) {let index = list.indexOf(11 - list[i]);if (index > -1) {console.log(i, index);// 1 3, 3 1, 4 5, 5 4}console.log("loop", ++loop);// loop 6
}

http://www.lryc.cn/news/266071.html

相关文章:

  • 如何更好的去理解源码
  • c# opencv 获取多边形中心点
  • Redis数据一致解决方案
  • 安捷伦DSOX2024A示波器
  • Leetcode算法系列| 4. 寻找两个正序数组的中位数
  • Java整合APNS推送消息-IOS-APP(基于.p12推送证书)
  • C语言strcpy函数用法
  • 汽车服务品牌网站建设的作用是什么
  • 【iOS】UICollectionView
  • Linux poll 和 select 机制
  • 【JVM基础】 JVM 如何加载一个类以及类加载机制
  • Android Studio使用Genymotion
  • Mysql sql_mode参数配置
  • SpringIOC之AbstractMessageSource
  • 详解Vue3中的基础路由和动态路由
  • Mysql四种事务隔离级别(简易理解)
  • react中使用redux最简单最方便的方式,配合rematch简化操作,5分钟学会
  • vmware安装中标麒麟高级服务器操作系统软件 V7.0操作系统
  • OpenCV | 霍夫变换:以车道线检测为例
  • 【C#与Redis】--目录
  • html旋转相册
  • Plantuml之对象图语法介绍(十九)
  • 深度学习(八):bert理解之transformer
  • R语言中的函数28:Reduce(), Filter(), Find(), Map(), Negate(), Position()
  • RTP/RTCP/RTSP/SIP/SDP/RTMP对比
  • Centos安装vsftpd:centos配置vsftpd,ftp报200和227错误
  • 软件测试职业规划
  • C语言数据结构
  • PHP之Trait理解, Trait介绍
  • SpringMVC:执行原理详解、配置文件和注解开发实现 SpringMVC