Javascript 使用jquery将字符串数组转换为整数

Javascript 使用jquery将字符串数组转换为整数,javascript,jquery,html,Javascript,Jquery,Html,我试图在jquery中将字符串数组转换为整数数组 以下是我的尝试: var cdata = data.values.split(","); $.each( cdata, function(i, l){ l = parseInt(l); }); 不使用jQuery(使用浏览器原生map方法): //使用jQuery $('.usesJQuery'); //使用普通的旧Javascript循环完成您想要完成的操作 var cdata=data.values.split(“,”); 对于(va

我试图在jquery中将字符串数组转换为整数数组

以下是我的尝试:

var cdata = data.values.split(",");
$.each( cdata, function(i, l){
   l = parseInt(l);
});
不使用jQuery(使用浏览器原生
map
方法):

//使用jQuery
$('.usesJQuery');
//使用普通的旧Javascript循环完成您想要完成的操作
var cdata=data.values.split(“,”);
对于(var i=0;i
我认为在这种情况下不需要使用Jquery。 在纯javascript中:

var str=“1,2,3”
var ArrayOfInts=str.split(',').map(Number)//输出:[1,2,3]

我相信只要稍微想一想,你自己就能做到。想想看。仔细想想,既然简单的javascript循环就足够了,为什么还要在这种情况下使用jquery呢?使用jQuery的目的是什么?你真的应该避免。我同意总是指定
parseInt()
基数,但我也建议
parseInt()
是错误的选择,除非你特别想处理非基数10的数字,或者你想忽略源字符串末尾的非数字字符。巴勃罗的答案只包含了一个更好的选项。或者只是:
cdata[i]=+cdata[i]。但是这个练习似乎毫无意义,因为字符串可以在表达式中转换为需要作为数字的数字。
+foo
parseInt(foo,10)
的缩写,如果
foo='10美元'然后
parseInt()
起作用,但
+
不起作用。在我看来,
parseInt()
比一元
+
更清晰/可读。简洁并不是万能的。
+foo
新数字
Array.prototype.map的简写。它不受广泛支持,应该先进行功能测试,如果不可用,还可以提供替代方案。添加for解决方案没有意义,@PaulPRO将其涵盖得非常好。我留下这个只是为了完成(因为其他地方没有提到)
var cdata = data.values.split(",");
$.map( cdata, function(i, l){
   return +l;
});
"1,2,3,4,5,6".split(',').map(function(e) {return +e});
// Use jQuery
$('.usesJQuery');

// Do what you want to acomplish with a plain old Javascript loop
var cdata = data.values.split(",");
for(var i = 0; i < cdata.length; i++)
    cdata[i] = parseInt(cdata[i], 10);