问一个简单问题.JS数组中的字符串怎么转为数值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问一个简单问题.JS数组中的字符串怎么转为数值相关的知识,希望对你有一定的参考价值。
小数的话用parseFloat,整数用parseInt。
举个例子:
var myArr=new Array();myArr[0]="1";
myArr[1]="2.1";
var ma0=parseInt(myArr[0]);//myArr[0]中字符串是整数,用parseInt。
var ma1=parseFloat(myArr[1]);//myArr[1]中字符串是小数,用parseFloat。
返回结果:ma0=1,ma1=2.1。
当然,也可以对调过来:
var myArr=new Array();myArr[0]="1";
myArr[1]="2.1";
var ma0=parseFloat(myArr[0]);
var ma1=parseInt(myArr[1]);
返回结果:ma0=1.0,ma1=2。
复杂一点的:
var myArr=new Array();myArr[0]="1ABC";
myArr[1]="2.1DEF";
var ma0=parseFloat(myArr[0]);
var ma1=parseInt(myArr[1]);
返回结果:ma0=1,ma1=2.1。
但如果是:
var myArr=new Array();myArr[0]="ABC1";
myArr[1]="DEF2.1";
var ma0=parseFloat(myArr[0]);
var ma1=parseInt(myArr[1]);
返回结果:ma0=null,ma1=null。因为parseInt和parseFloat只能读取字符串前面的数字。
参考技术A 循环数组取出数据 参考技术B var num = Number(arr[0]);请问js中对象数组求和代码怎么实现?
var array=['id':80,'price':50.,'id':20,'price':30];
类似这样的自定义对象数组,里面的某个属性值求和。请问怎么办呢?
需要的结果是price=80,id值可以不考虑。
困惑了很久,问题终于被我找到了啦!原因如下:
JavaScript中“+”和java类似,有数值计算和字符串连接。
此处应该注意:使用parseInt()函数对数组中的对象的属性值进行处理,那么就会得到正确的结果了。
简单的处理就可以了:
var prices=0;
//遍历数组,计算出总价
for(var i=0;i<array.length;i++)
prices=prices+parseInt(array[i].price);
你好,实现代码如下:
var arry = ['id': 80, 'price': 50, 'id': 20, 'price': 30, 'id': 20, 'price': 300];var strarr = [];
for (let i in arry)
strarr.push(arry[i]['price'])
;
console.log(eval(strarr.join('+'))) //结果
以上是实现的代码,希望采纳!
给你个最简单的方法:
var array=['id':80,'price':50,'id':20,'price':30];var prices=array.reduce((p,e)=>p+e.price,0);
以上是关于问一个简单问题.JS数组中的字符串怎么转为数值的主要内容,如果未能解决你的问题,请参考以下文章