问一个简单问题.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('+'))) //结果

以上是实现的代码,希望采纳!

参考技术A

给你个最简单的方法:

var array=['id':80,'price':50,'id':20,'price':30];
var prices=array.reduce((p,e)=>p+e.price,0);

以上是关于问一个简单问题.JS数组中的字符串怎么转为数值的主要内容,如果未能解决你的问题,请参考以下文章

C语言中 字符串如何转为整型数值

如何用mongoose更新这个文档中的数组中的对象中的数组里的值?

一个实例全析js数组(17)

关于把int的数值转为字符串

labview 数组中相邻元素抽取和组合(截取)

Echarts.js 根据数值自定义radar雷达图拐点颜色