Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript--->;如何将字符串数组转换为数字数组?_Javascript - Fatal编程技术网

JavaScript--->;如何将字符串数组转换为数字数组?

JavaScript--->;如何将字符串数组转换为数字数组?,javascript,Javascript,我的代码 var bills = [50.23, 19.12, 34.01, 100.11, 12.15, 9.90, 29.11, 12.99,10.00, 99.22, 102.20, 100.10, 6.77, 2.22 ]; var totals = bills.map(function(tip){ tip += 15/100; tip = tip.toFixed(2); return tip; }); co

我的代码

  var bills = [50.23, 19.12, 34.01, 100.11, 12.15, 9.90, 
               29.11, 12.99,10.00, 99.22, 102.20, 100.10, 6.77, 2.22 ];

  var totals = bills.map(function(tip){
     tip += 15/100;
     tip = tip.toFixed(2);
     return tip;
  });
  console.log(totals);
返回

  [ '50.38', '19.27', '34.16', '100.26', '12.30', '10.05', 
   '29.26', '13.14', '10.15', '99.37', '102.35', '100.25', '6.92', '2.37' ]
现在,如何将这个字符串数组转换成这样的数字数组

  [ 50.38,  19.27, 34.16, 100.26, 12.30, 10.05, 
   29.26, 13.14, 10.15, 99.37, 102.35, 100.25, 6.92, 2.37 ]

强制将返回值转换为编号,替换

return tip;
使用一元加
+

return +tip;
编号
构造函数

return Number(tip);
您可以将代码缩短为

var totals = bills.map( tip => +( tip + 15/100 ).toFixed( 2 ) ); 

您可以在数组中循环并使用parseFloat()函数


toFixed将一个数字转换为字符串。提示15%是否可能重复?还是一个固定值,比如0.15?这是一个X->Y问题。您当前通过.toFixed将数字数组转换为字符串。您可以等到即将显示这些数字后再使用.toFixed,而不是在一系列计算的中途使用,因为在以后的操作中,您可能仍然需要这些值作为数字。删除
.toFixed(2)
。就像魔法一样,它们又会变成数字。