当前位置: 首页 > news >正文

飞沐视觉北京网站建设公司苏州网站建设空间

飞沐视觉北京网站建设公司,苏州网站建设空间,怎样注册个人有限公司,公司网站seo外包文章目录 想要读这个表格,并且求第二列所有价格的和方法一:通过添加文件输入元素上传csv完整(正确)代码之前的错误部分因为价格是小数,所以下面的代码出错。如果把parseFloat改成parseInt,那么求和没有意义…

文章目录

  • 想要读这个表格,并且求第二列所有价格的和
  • 方法一:通过添加文件输入元素上传csv
    • 完整(正确)代码
    • 之前的错误部分
      • 因为价格是小数,所以下面的代码出错。
      • 如果把parseFloat改成parseInt,那么求和没有意义,因为不准确。如果要用parseFloat,是不能用BigInt的。BigInt 只能表示整数,不能直接用于表示浮点数。
      • 如果需要处理非常大的浮点数,要考虑使用第三方库,如 bignumber.js 或 decimal.js,这些库提供了对任意精度的浮点数的支持。我这次用的是decimal
    • 方法二:自动读取?

想要读这个表格,并且求第二列所有价格的和

在这里插入图片描述

方法一:通过添加文件输入元素上传csv

完整(正确)代码

选择了csv文件之后,会自动求和 并显示在price sum中
在这里插入图片描述

<template><div><input type="file" @change="handleFileUpload" /><p>Price sum: {{ priceSumFinal }}</p></div>
</template><script setup>
import {ref} from 'vue'
import Decimal from 'decimal.js';let priceSumFinal = ref(0)const handleFileUpload=(event)=> {// 获取用户选择的文件const file = event.target.files[0];// 创建一个新的FileReader对象const reader = new FileReader();// 监听文件读取完成事件reader.onload = () => {// 将读取的文件内容传递给处理CSV数据的函数parseCSVData(reader.result);};// 读取文件内容reader.readAsText(file);
}const parseCSVData = (data)=>{// 解析CSV文件内容,并将其转换为对应的数据结构// 例如,将CSV中的每一行转换为一个对象const rows = data.split('\n');const headers = rows[0].split(',');const csvData = [];for (let i = 1; i < rows.length; i++) {const row = rows[i].split(',');const rowData = {};for (let j = 0; j < headers.length; j++) {rowData[headers[j]] = row[j];}csvData.push(rowData);}console.log(csvData);// 初始化 priceSum 为 Decimal 类型let priceSum = new Decimal(0);console.log(typeof priceSum); // 输出:objectfor (let i = 1; i < 100; i++) {// 使用 Decimal 来处理每个 price 值let priceDecimal = new Decimal(csvData[i].price);priceSum = priceSum.plus(priceDecimal);}console.log(priceSum.toString()); // 输出:将 Decimal 转换为字符串priceSumFinal.value = priceSum.toString()}</script>

之前的错误部分

因为价格是小数,所以下面的代码出错。

如果把parseFloat改成parseInt,那么求和没有意义,因为不准确。如果要用parseFloat,是不能用BigInt的。BigInt 只能表示整数,不能直接用于表示浮点数。

let priceSum = BigInt(0);
console.log(typeof priceSum); // 输出:bigint// 遍历 csvData 数组,累加 price 值
for (let i = 1; i < csvData.length; i++) {// 确保 csvData[i].price 是一个可以转换为 BigInt 的字符串let priceBigInt = BigInt(parseFloat(csvData[i].price));priceSum += priceBigInt;
}console.log(priceSum.toString()); // 输出:将 BigInt 转换为字符串}

如果需要处理非常大的浮点数,要考虑使用第三方库,如 bignumber.js 或 decimal.js,这些库提供了对任意精度的浮点数的支持。我这次用的是decimal

方法二:自动读取?

按照这篇文章的意思是只能通过input读取?

https://blog.51cto.com/u_16099178/6425473

http://www.yayakq.cn/news/648149/

相关文章:

  • 开发什么网站线上营销活动主要有哪些
  • 岳阳建设网站重庆建设工程质量监督信息网
  • o2o网站建设市场wordpress 输出 文章时间
  • php素材网站源码免费下载网站的域名分为哪些
  • 阿里云虚拟主机wordpress建站教程那些免费网站可以做国外贸易
  • 网站开发设计制作合同百度电商推广
  • 网站一年续费多少钱学生班级优化大师
  • iis 制作搜索网站深圳建站网络公司
  • 中国品牌网站建设电脑做网站怎么解析域名
  • 象刀设计网站响应式网站好不好
  • 商城网站类建设哪家好小说网站建设详细流程
  • 深圳专业返利网站开发做3d办公家具教程的网站
  • 卖保健品可以自己做网站卖吗高校心理健康网站建设与实现
  • 网站建设一站式网站挣钱怎么做
  • 做电影网站免责声明有用吗网站建设及 维护合同
  • 保定模板建站软件六师五家渠市建设局网站
  • h5手机模板网站有名的网站制
  • 网站的推广方案wordpress 函数 文件
  • 免费做的英文网站做社交网站的预算
  • 网站后台开发语言小象编程官网登录入口
  • 网站开发发展趋势嘉兴网站开发选哪家
  • 王璞网站开发实战答案大楼物流公司网站源码
  • 博客网站推荐撰写网站建设策划书范文
  • 海口兼职网站国外做giveaway的网站
  • 中国企业信息网官方网站海口网站运营托管公司
  • 30岁学编程太晚了做seo推广公司
  • 网站组织管理建设wordpress添加下载
  • 营销型网站建设案例分析科技厅
  • 南通企业免费建站湖州市南浔区建设局网站
  • 国外推广网站网站项目建设策划书流程