讲师中心 微信公众号
AI工具推荐 视频效率加速

如何使用 JavaScript 创建带有数字的动态长度数组并对数字求和?

云婷大大_7980

云婷大大_7980

发布时间:2023-08-26 19:29:06

|

984人浏览过

|

来源于tutorialspoint

转载

如何使用 javascript 创建带有数字的动态长度数组并对数字求和?

在 JavaScript 中,数组的长度始终是动态的。与其他编程语言一样,我们在创建数组时不需要定义数组的长度。因此,我们可以创建一个数组并将任意数量的元素推送到 JavaScript 数组中。在这里,我们将创建数组的动态长度并向其添加数字。之后,我们将对所有数字进行求和。本教程将教我们创建一个包含数字的动态长度数组,并使用 JavaScript 对数字求和。

使用for循环对动态数组的所有元素求和

我们可以使用 for 循环迭代数组,并将每个元素相加以获得所有元素的总和。我们将使用普通的 for 循环和 for-of 循​​环来访问数组元素并将所有元素添加到单个变量中。

语法

用户可以按照下面的语法使用for循环对动态长度数组的所有元素求和。

let arraySum = 0;
for (let i = 0; i < length; i++) {
  arraySum += dynamicArray[i];
}

在上面的语法中,length 是动态数组的长度。我们将所有元素添加到 arraySum 变量中。

立即学习“Java免费学习笔记(深入)”;

步骤

  • 使用 Math.random() 方法并生成一个随机整数以用作动态数组的长度。

  • 此外,将随机生成的长度与任意整数相乘即可定义动态数组的长度范围。例如,如果您想创建长度在 0 到 15 之间的动态数组,请将随机整数乘以 15,因为它会生成 0 到 10 之间的值。

  • 现在,使用 for 循环来初始化值。为了初始化随机值,我们再次使用 Math.random() 方法并将其乘以 5 以生成 0 到 5 之间的随机值。

  • 使用 Math.round() 方法对随机生成的数字进行四舍五入。

  • 创建一个 arraysum 变量并用零初始化。

  • 现在,迭代数组和 arraySum 变量的每个元素。

示例 1

在下面的示例中,我们使用 Math.random() 函数生成动态数组的长度,使用随机值初始化数组,并使用 for-lop 对所有数组值求和。

在输出中,用户可以看到数组的值及其总和。此外,每次用户运行下面的代码时,它都会创建一个具有不同长度和值的新数组。

<html>
<body>
   <h2>Using the <i> for-loop </i> add all elements of the array of numbers of dynamic length.</h2>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      let length = Math.random() * 15;
      let dynamicArray = [];
         for (let i = 0; i < length; i++) {
            dynamicArray[i] = Math.round(Math.random() * 5);
         }
      let arraySum = 0;
      for (let i = 0; i < length; i++) {
         arraySum += dynamicArray[i];
      }
      output.innerHTML += "The array of random number is " + dynamicArray + "<br/>";
      output.innerHTML += "The sum of all array elements is " + arraySum + "<br/>";
   </script>
</body>
</html>

示例 2

在下面的示例中,我们从用户处获取了动态数组的长度。此外,我们还从用户那里获取数组的每个值。将用户输入存储到动态数组后,我们使用 for-of 循​​环对其进行迭代。

在 for 循环迭代时,我们将数组的每个元素添加到 sum 变量中。

<html>
<body>
  <h2>Using the <i> for-of loop </i> add all elements of the array of numbers of dynamic length.</h2>
  <div id = "output"> </div>
  <script>
    let output = document.getElementById('output');
    // take the dynamic length of the array from users
    let length = +prompt("Enter a length of the dynamic array", 5);
    let dynamicArray = [];
    // take array inputs from users
    for (let i = 1; i <= length; i++) {
      dynamicArray.push(+prompt("Enter " + i + "th number value", 0))
    }
    let sum = 0;
    // using the for-of loop to get a sum of all elements
    for (let element of dynamicArray) {
      sum += element;
    }
    output.innerHTML += "The array of random number is " + dynamicArray + "<br/>";
    output.innerHTML += "The sum of all array elements is " + sum + "<br/>";
  </script>
</body>
</html>

使用 array.reduce() 方法对动态数组的所有数字求和

array.reduce() 方法通过执行多个操作将数组缩减为单个元素。我们可以创建一个变量来存储所有数组元素的总和,并通过将每个元素添加到 sum 变量来减少数组。

语法

用户可以按照下面的语法使用reduce()方法对动态数组的所有元素求和

let sumOfArray = inputArray.reduce((element, currentSum) => element + currentSum, 0)

在上面的语法中,element是数组的元素,currentSum是数组直到第i个索引的所有元素的总和,而数组的总和包含所有数组元素的最终总和。

示例 3

在下面的示例中,我们通过获取用户输入创建了动态数组。此外,用户还可以注意到我们在提示符之前使用了“+”一元运算符将字符串转换为数字。

最后,我们使用 array.reduce() 方法对存储在数组中的所有用户输入求和。

<html>
<body>
   <h2>Using the <i> array.reduce() method </i> to add all elements of the array of numbers of dynamic length</h2>
   <div id="output"></div>
   <script>
      let output = document.getElementById('output');
      let arrayLen = +prompt("Enter any number to create array of that length", 10);
      let inputArray = [];
      for (let i = 1; i <= arrayLen; i++) {
         inputArray[i] = +prompt("Enter " + i + "th number value", 5);
      }
      let sumOfArray = inputArray.reduce((element, currentSum) => element + currentSum, 0)
      output.innerHTML += "The length of the array is " + arrayLen + "<br/>";
      output.innerHTML += "The array of random number is " + inputArray + "<br/>";
      output.innerHTML += "The sum of all array elements is " + sumOfArray + "<br/>";
   </script>
</body>
</html>

我们学习了如何在 JavaScript 中创建动态长度数组。此外,我们还学习了使用 for 循环和 reduce() 方法对动态长度数组的所有元素求和。我们还可以使用 while 循环。

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

相关专题

更多
java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

5724

2023.10.24

Go语言中的运算符有哪些
Go语言中的运算符有哪些

Go语言中的运算符有:1、加法运算符;2、减法运算符;3、乘法运算符;4、除法运算符;5、取余运算符;6、比较运算符;7、位运算符;8、按位与运算符;9、按位或运算符;10、按位异或运算符等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2364

2024.02.23

php三元运算符用法
php三元运算符用法

本专题整合了php三元运算符相关教程,阅读专题下面的文章了解更多详细内容。

1592

2025.10.17

while的用法
while的用法

while的用法是“while 条件: 代码块”,条件是一个表达式,当条件为真时,执行代码块,然后再次判断条件是否为真,如果为真则继续执行代码块,直到条件为假为止。本专题为大家提供while相关的文章、下载、课程内容,供大家免费下载体验。

334

2023.09.25

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

1538

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

2224

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

5724

2023.10.24

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

4829

2023.11.24

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

20

2026.09.23

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn