jQuery从数字字符串创建int数组

Mar*_*ark 4 javascript arrays jquery split

<div id="dynamicTable" columns="26,40,41,21,71,39,23,19">

var columns = $('#dynamicTable').attr('columns');
var attributeIds = new Array();
attributeIds = columns.split(',');

这会创建一个字符串数组,我需要它们是int.最好的方法是什么?

use*_*716 9

你可以$.parseJSON.

示例: http ://jsfiddle.net/ULkXy/

var columns = $('#dynamicTable').attr('columns');
var attributeIds = $.parseJSON( '[' + columns + ']' );
Run Code Online (Sandbox Code Playgroud)

这是使用while带有一元运算+符的循环的另一种方法:

示例: http ://jsfiddle.net/ULkXy/1/

var columns = $('#dynamicTable').attr('columns');
var attributeIds = columns.split(',');
var len = attributeIds.length;

while( len-- ) {
    attributeIds[len] = +attributeIds[len];
}
Run Code Online (Sandbox Code Playgroud)


cha*_*log 7

var columns = $('#dynamicTable').attr('columns'),
    attributeIds = $.map(columns.split(','), function(val, idx) { return parseInt(val, 10) });
Run Code Online (Sandbox Code Playgroud)