数组求和的方法_vb怎么求和数组里的值

数组求和的方法_vb怎么求和数组里的值对于数组求和有多种方法:1:递归方法functionsum(arr){ varlen=arr.length; if(len==0){  return0; }elseif(len==1){  returnarr[0]; }else{  returnarr[0]+sum(arr.slice(1)); }}vara=newArray(1…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

对于数组求和有多种方法:

1:递归方法

function 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));
  }
}
var a=new Array(1,2,3,4,5);
document.write(sum(a));

输出结果:数组求和的方法_vb怎么求和数组里的值

该方法的原理是利用slice方法一直获取子函数中的第一个元素,达到遍历数组中所有元素的效果。

2:常规循环

function sum(arr){

  var a=0;
  for(var i=0;i<arr.length;i++){

    a+=arr[i];
  }
  return a;
}
基础,没什么好讲的

3:函数式编程 map-reduce

reduce的用法是将函数组中,函数必须接受2个参数,把结果继续和序列的下一个元素做累计,如

[x1, x2, x3, x4].reduce(f) = f(f(f(x1, x2), x3), x4)

function sum(arr){

  return arr.reduce(function(prep,curr,idx,arr){

    return prep+curr;
  });
}
var a=new Array(1,2,3,4);
document.write(sum(a));

结果为:数组求和的方法_vb怎么求和数组里的值

4:forEach遍历

定义: forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。其实forEach()是Array下的一个方法. 
注意: 无法使用break等语句跳出遍历, 直到所有元素都传递给调用的函数, 但是可以使用抛出异常, 提前终止循环 

function sum(arr){

  var s=0;
  arr.forEach(function(val,idx,arr){

    s+=val;
  });
  return s;
}
var a=new Array(1,2,3,4);
document.write(sum(a));

输出结果:数组求和的方法_vb怎么求和数组里的值

5:eval方法

function sum(arr) {

    return eval(arr.join(“+”));
};
var a=new Array(1,2,3,4);
document.write(sum(a));

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186542.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java关键字的用法_null是不是java关键字

    java关键字的用法_null是不是java关键字JAVA入门到精通-JAVA关键字列表

    2022年4月21日
    78
  • SQL Server 数据库学习「建议收藏」

    SQL Server 数据库学习「建议收藏」一、认识数据库1、数据库的基本概念2、数据库常用对象3、数据库的组成数据库主要由文件和文件组组成。数据库中所有的数据和对象都被存储在文件中。二、创建数据库1、创建数据库对象资源管理器—数据库——右击——新建数据库三、操作数据表与视图1、创建数据表空值:表示数据未知。非空值:数据列不允许空值。(1)选择一个数据库——展开表——…

    2022年8月20日
    8
  • unity3d自学教程_3D技巧

    unity3d自学教程_3D技巧0.目录简要介绍基本概念视图菜单坐标系统资源元素脚本交互相机操作 1.简要介绍Unity3D软件是由UnityTechnologies公司提供的综合开发环境,主要面向游戏开发人员、虚拟现实设计师等,可用于创建诸如三维视频游戏、建筑可视化、实时三维动画等类型的多媒体内容,并支持这些内容在Windows、iOS、Android等多种平台的发布,功能非常强大。Unity3D

    2022年8月10日
    12
  • qt中connect函数信号写法_qt中connect函数用法

    qt中connect函数信号写法_qt中connect函数用法*.cpp//带参数的拉姆达表达式connect(this,&Widget::mySignal,[=](intcount){qDebug()<<count;});mySignal(123456);*.hsignals:voidmySignal(intcount);注意:要在pro文件中加上CONFIG+=C++11…

    2025年11月28日
    12
  • jsp out.print报错_idea代码错误但不提示

    jsp out.print报错_idea代码错误但不提示昨晚从网上copy一份代码到IDEA时,发现其中IDEA中的JSP文件在写入out.println时会报错,如图所示上网查阅资料发现有如下说法A、新建Java工程时,应选择JavaEnterprise而非Java里的webapplication(JavaEnterprise会自动关联Tomcat到Dependencies)B、应将Tomcat关联到File-&gt;ProjectStruct…

    2022年10月2日
    4
  • MacOS 安装 talnet 命令[通俗易懂]

    MacOS 安装 talnet 命令[通俗易懂]/usr/bin/ruby-e”$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)”brewinstalltelnet补充:如果有开机密码,那第一行命令执行过程中可能需要输入一下。…

    2022年6月17日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号