数组求和的方法_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));

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • TiDB 在银行核心金融领域的研究与两地三中心实践

    TiDB 在银行核心金融领域的研究与两地三中心实践作者介绍:于振华,北京银行软件开发部资深架构师,长期从事银行核心系统研发、规划,参与过多个核心信息系统建设工作,包括一、二代支付系统、第四代银行核心系统建设、分布式核心系统建设等企业级项目工作。当前主要研发方向集中在构建先进、高效、面向OLTP的银行交易系统,提升银行信息系统服务能力。本文整理自于振华老师在TiDBDevCon2019上的演讲实录,演讲主题为《TiDB在…

  • pycharm中pyqt5使用方法_pycharm安装pyqt5失败

    pycharm中pyqt5使用方法_pycharm安装pyqt5失败PyQt5安装之前安装过anaconda,里面是含有pyqt的,在环境里搜索可以看到,但是针对实际开发,并没有全部的qt5工具,所以需要再次安装。在cmd里面运行:pipinstallPyQt5-ihttps://pypi.douban.com/simple安装常用的Qt工具:pipinstallPyQt5-tools-ihttps://pypi…

  • dedecsm系统(企业简介)类单栏目模版如何修改和调用整理

    dedecsm系统(企业简介)类单栏目模版如何修改和调用整理

  • asp实现用户注册登录代码(用Javaweb制作登录注册页面)

    最近在写asp课程设计,网站登录注册的功能怎么能少,捣鼓了两天终于弄出点东西来了。环境:Windows10+VS2015+自带LocalDB看一下效果:1、注册页面:如果用户重名:2、登录页:3、注册或者登录好了会跳到Home页面并且显示当前的用户下面看看关键代码:①注册前台页面Register….

  • 深入理解 MySQL 事务:隔离级别、ACID 特性及其实现原理

    深入理解 MySQL 事务:隔离级别、ACID 特性及其实现原理什么是事务?事务(`Transaction`),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元。事务通常由高级数据库操作语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如`begintransaction`和`endtransaction`语句(或函数调用)来界定。事务由事务开始(`begintransaction`)和事务结束(`endtransaction`)之间执行的全部操作组成。

  • USB转RS485/RS422接线说明

    USB转RS485/RS422接线说明       

发表回复

您的电子邮箱地址不会被公开。

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