当前位置:首页 > JavaScript

js实现总计

2026-04-05 21:25:20JavaScript

在JavaScript中实现总计功能通常涉及数组元素的累加、对象属性的求和或表格数据的汇总。以下是几种常见场景的实现方法:

数组元素求和

对数字数组进行总计可直接使用 reduce 方法:

const numbers = [10, 20, 30, 40];
const total = numbers.reduce((sum, current) => sum + current, 0);
console.log(total); // 输出 100

对象属性求和

若需对对象数组中某个属性求和:

const items = [
  { name: 'A', price: 10 },
  { name: 'B', price: 20 },
  { name: 'C', price: 30 }
];
const totalPrice = items.reduce((sum, item) => sum + item.price, 0);
console.log(totalPrice); // 输出 60

动态表格数据总计

对HTML表格中某一列数据求和:

const table = document.getElementById('data-table');
const rows = table.querySelectorAll('tr');
let total = 0;

// 跳过表头,从第二行开始
for (let i = 1; i < rows.length; i++) {
  const cells = rows[i].querySelectorAll('td');
  const value = parseFloat(cells[2].textContent); // 假设第三列是数字
  if (!isNaN(value)) total += value;
}
console.log(total);

带条件筛选的求和

结合 filter 实现条件筛选后求和:

const transactions = [
  { amount: 100, type: 'income' },
  { amount: 50, type: 'expense' },
  { amount: 200, type: 'income' }
];
const incomeTotal = transactions
  .filter(t => t.type === 'income')
  .reduce((sum, t) => sum + t.amount, 0);
console.log(incomeTotal); // 输出 300

格式化输出结果

使用 toLocaleString 添加千位分隔符:

js实现总计

const grandTotal = 1234567.89;
const formattedTotal = grandTotal.toLocaleString('en-US', {
  style: 'currency',
  currency: 'USD'
});
console.log(formattedTotal); // 输出 "$1,234,567.89"

注意事项

  • 处理浮点数时建议使用 parseFloat 转换,避免字符串拼接导致的错误
  • 大数据量时可考虑分块计算或Web Worker避免主线程阻塞
  • 对于财务计算,建议使用专门库(如currency.js)处理精度问题

标签: js
分享给朋友:

相关文章

vue.js实现轮播

vue.js实现轮播

Vue.js 实现轮播功能 使用第三方库(推荐) Vue.js 生态中有许多成熟的轮播组件库,例如 vue-awesome-swiper 或 swiper,它们功能丰富且易于集成。 安装 swipe…

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

js轮播图实现原理

js轮播图实现原理

轮播图的基本原理 轮播图通过动态切换显示的内容(图片、文本等)实现视觉上的滑动效果。核心原理是利用CSS和JavaScript控制元素的显示与隐藏,或通过变换位置实现滑动动画。 实现方法一:…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

js怎么实现异步

js怎么实现异步

异步实现方法 JavaScript中实现异步操作主要通过以下几种方式: Promise Promise是ES6引入的异步解决方案,用于处理异步操作的成功或失败状态。 const promise =…

js实现滚动

js实现滚动

实现滚动效果的方法 在JavaScript中实现滚动效果可以通过多种方式完成,以下是一些常见的方法: 使用window.scrollTo() window.scrollTo()方法可以将页面滚动到指…