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

时间:2010-12-27 16:29:55

标签: javascript jquery arrays 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(',');

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

2 个答案:

答案 0 :(得分:9)

你可以use $.parseJSON

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

var columns = $('#dynamicTable').attr('columns');
var attributeIds = $.parseJSON( '[' + columns + ']' );

以下是使用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];
}

答案 1 :(得分:7)

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