javascript - 在添加元素时循环遍历数组中所有元素的最有效方法
问题描述
我在 Google Apps Script Javascript 中有一个二维数组。我正在尝试遍历所有元素,但其中一个循环选项是添加另一个元素。例如:
for (let i in arr){
if (arr[i][0] == "good")
arr[i].push("clear");
else if (arr[i][0] == "add")
arr.splice(+i+1,0,"good");
}
但是它并没有经历代码的实际结尾,我想是因为“让 i in arr”一次获得了数组的长度并到达了那个结尾。这导致了以后的问题。我应该使用 while 还是执行 while 循环?我是否应该声明一个长度值并在添加元素时手动增加它?
解决方案
在您的条件下使用arr.length
,它将检查最新的数组长度。
for (let i = 0; i < arr.length; i++) {
if (arr[i][0] == "good")
arr[i].push("clear");
else if (arr[i][0] == "add")
arr.splice(+i+1,0,"good");
}
推荐阅读
- javascript - 在 Vue.js 2.0 中将 css 类添加到 HTML 或 BODY 标签
- php - 错误消息:调用未定义的方法 CI_DB_mysqli_result::results()
- python - 在方法中的for循环中更改实例属性
- python - 如何使用python selenium单击iframe内的按钮
- css - 计算器屏幕上的大数字扩大了边界
- php - PHP:如何在保留另一个页面的数据的同时重定向到同一页面
- keyboard-shortcuts - iterm2 用于在窗口之间导航的键盘快捷键
- sql-server - 如何根据参数使用不同的“where”子句?
- ruby-on-rails - 基于相对光标的分页在 Shopify api gem 中不起作用
- bash - BASH:我必须循环 20 miljon 文件并验证它们