当前位置:首页 > JavaScript

js实现sum方法

2026-04-07 11:57:25JavaScript

实现数组求和的基本方法

使用 reduce 方法对数组元素进行累加:

const sum = (arr) => arr.reduce((acc, curr) => acc + curr, 0);

处理非数组或空数组的情况

增加类型校验和空数组处理逻辑:

const sum = (arr) => {
  if (!Array.isArray(arr)) throw new Error('Input must be an array');
  return arr.length === 0 ? 0 : arr.reduce((acc, curr) => acc + curr, 0);
};

支持多维数组求和

通过递归实现多维数组求和:

js实现sum方法

const sum = (arr) => {
  return arr.reduce((acc, curr) => {
    return acc + (Array.isArray(curr) ? sum(curr) : curr);
  }, 0);
};

添加数值类型校验

确保只对数字类型进行求和:

const sum = (arr) => {
  return arr.reduce((acc, curr) => {
    const num = parseFloat(curr);
    return acc + (isNaN(num) ? 0 : num);
  }, 0);
};

性能优化版本

针对大型数组的优化实现:

js实现sum方法

const sum = (arr) => {
  let total = 0;
  for (let i = 0; i < arr.length; i++) {
    total += arr[i] || 0;
  }
  return total;
};

支持链式调用的实现

扩展数组原型实现链式调用:

Array.prototype.sum = function() {
  return this.reduce((acc, curr) => acc + curr, 0);
};

使用时直接调用:

[1, 2, 3].sum(); // 返回6

标签: 方法js
分享给朋友:

相关文章

vue实现方法

vue实现方法

Vue 实现方法 Vue 是一种流行的前端框架,用于构建用户界面和单页应用。以下是几种常见的 Vue 实现方法: 创建 Vue 实例 通过 new Vue() 创建一个 Vue 实例,传入配置对象,…

vue 方法实现

vue 方法实现

Vue 方法实现指南 在 Vue 中,方法(methods)是组件中用于处理逻辑的函数集合。以下是实现 Vue 方法的详细指南。 定义方法 在 Vue 组件中,方法通过 methods 选项定义。每…

js实现轮播图

js实现轮播图

基础轮播图实现 使用HTML、CSS和JavaScript实现一个简单的自动轮播图。HTML结构包含一个容器和多个图片项。 <div class="slider"> <div…

js实现打印

js实现打印

使用window.print()方法实现打印 在JavaScript中,可以通过调用window.print()方法直接触发浏览器的打印功能。这会打开系统的打印对话框,用户可以选择打印机和设置打印选项…

js防抖和节流实现

js防抖和节流实现

防抖(Debounce)的实现 防抖的核心思想是在事件被触发后,延迟执行回调函数。如果在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口大小调整等场景。 function debounce…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…