JS双重for循环详解

一、JS双重for循环数组去重

const arr = [1, 2, 3, 1, 4, 2];
const result = [];
for(let i = 0; i < arr.length; i++){
  let flag = true;
  for(let j = i + 1; j < arr.length; j++){
    if(arr[i] == arr[j]){
      flag = false;
      break;
    }
  }
  if(flag){
    result.push(arr[i]);
  }
}
console.log(result);

此处所示代码可以实现JS双重for循环数组去重,其实现原理是利用两个for循环,外层for循环用于遍历数组,内层for循环用于比较当前元素与数组后面所有元素是否相同,如果相同则将flag标志位设置为false,如果无相同元素,则将该元素存入result数组。

二、双重for循环去重

const arr = [1, 2, 3, 1, 4, 2];
for(let i = 0; i < arr.length; i++){
  for(let j = i + 1; j < arr.length; j++){
    if(arr[i] == arr[j]){
      arr.splice(j,1);
      j--;
    }
  }
}
console.log(arr);

在这段代码中,我们可以看出外层循环用于遍历数组,内层循环用于比较当前元素与数组后面所有元素是否相同,如果相同,则使用splice()方法将该重复元素从数组中删除。

三、JS双重for循环案例

for(let i = 1; i <= 9; i++){
  let str = '';
  for(let j = 1; j <= i; j++){
    str += i + '*' + j + '=' + i * j + ' ';
  }
  console.log(str);
}

以上代码实现的是“JS双重for循环编程99乘法表”的功能,外层for循环控制表的行数,内层for循环控制每行表格的内容,这里选择字符串拼接的方式实现。

四、JS双重循环

JS双重循环,即Nested For Loop,是指在一个for循环内进行嵌套执行另一个for循环的操作,利用这种嵌套方式可以完成比较复杂的循环计算。

五、双重for循环怎么执行

双重for循环执行流程如下:

  • 1. 外层for循环开始。
  • 2. 内层for循环开始。
  • 3. 内层for循环执行完所有操作之后,返回到外层for循环。
  • 4. 如果外层for循环仍有剩余操作,则继续执行内层循环。
  • 5. 外层for循环执行完所有操作之后,程序结束。

六、双重for循环流程图

下面是双重for循环的流程图:

+--------------+
|              |
v              |
+-------+     |
| Start |     |
+-------+     |
    |          |
    v          |
+-------+     |
| for i |-----+
| (init)|       |
+-------+       |
    |          |
    v          |
+-------+     +---------+
| for j |-----| Operations |
| (init)|     +---------+
+-------+       |
    |          |
    v          |
+-------+     |
|   j   |-----+
| (exit)|
+-------+     |
    |          |
    v          |
+--------------+
|              |
|     End      |
|              |
+--------------+

七、for双重循环实例

//计算二维数组中每个元素的和
let arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
let sum = 0;
for(let i = 0; i < arr.length; i++){
  for(let j = 0; j < arr[i].length; j++){
    sum += arr[i][j];
  }
}
console.log(sum);

这个双重for循环的例子是计算一个二维数组中所有元素的和,它内部的语句与我们前面介绍的例子类似。

总结

本文从JS双重for循环数组去重、双重for循环去重、JS双重for循环案例、JS双重循环以及双重for循环执行流程和流程图等多个方面进行了详细的阐述,希望对大家有所帮助。

原创文章,作者:YYWM,如若转载,请注明出处:https://www.506064.com/n/137166.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
YYWMYYWM
上一篇 2024-10-04 00:17
下一篇 2024-10-04 00:17

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • Python for循环求1到100的积

    Python中的for循环可以方便地遍历列表、元组、字典等数据类型。本文将以Python for循环求1到100的积为中心,从多个方面进行详细阐述。 一、for循环语法 Pytho…

    编程 2025-04-29
  • Python使用for循环打印99乘法表用法介绍

    本文介绍如何使用python的for循环语句来打印99乘法表,我们将从需要的基本知识、代码示例以及一些加强版来详细讲解。 一、基础知识 在学习如何使用for循环打印99乘法表之前,…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • t3.js:一个全能的JavaScript动态文本替换工具

    t3.js是一个非常流行的JavaScript动态文本替换工具,它是一个轻量级库,能够很容易地实现文本内容的递增、递减、替换、切换以及其他各种操作。在本文中,我们将从多个方面探讨t…

    编程 2025-04-28
  • Python for循环优化

    本文将介绍如何对Python中的for循环进行优化。 一、使用range()代替直接迭代 Python中的for循环本质上是一种迭代操作,可以对列表、元组、集合等数据结构进行遍历。…

    编程 2025-04-28
  • in和for的用法区别

    对于Python编程中的in和for关键词,我们在实际编码中很容易混淆。本文将从多个方面详细阐述它们的用法区别,帮助读者正确使用in和for。 一、in关键词 in是用来判断一个元…

    编程 2025-04-28
  • JS图片沿着SVG路径移动实现方法

    本文将为大家详细介绍如何使用JS实现图片沿着SVG路径移动的效果,包括路径制作、路径效果、以及实现代码等内容。 一、路径制作 路径的制作,我们需要使用到SVG,SVG是可缩放矢量图…

    编程 2025-04-27
  • Python利用for循环实现三角形的绘制

    Python是一种高级编程语言,也是非常适合初学者学习的一种编程语言。本文将详细介绍如何利用Python中的for循环来实现三角形的绘制。通过本文的学习,大家可以对Python的基…

    编程 2025-04-27

发表回复

登录后才能评论