我有一些数字字符串:
var _ids = 130,131,240;
我需要从这个字符串得到一些数字,这是131,我不能使用.split()方法,因为昏迷之间的数字可以更多,而不是我知道实际id是数字130(在这个例子中),所以我正在这样做:
var _id = 130;
var id = _ids.substring(_ids.lastIndexOf((_id + ',') + 1), _ids.lastIndexOf(','));
结果我有130,136
...我做错了什么?有人可以帮忙吗?
答案 0 :(得分:5)
要获得130
之后的那个,请使用......... split()
var _ids = "130,131,240";
var _id = "130";
var arr = _ids.split(',');
var idx = arr.indexOf(_id) + 1;
var result = null;
if (idx < arr.length && idx != -1) {
result = arr[ idx ]; // gets the next one
}
document.body.innerHTML = result;
请注意,您不能将逗号分隔的数字作为变量,它可能是一个字符串?
答案 1 :(得分:0)
您可以使用正则表达式:
var _ids = '130,131,240';
var _id = '130';
var id = _ids.match(new RegExp(id+',([^,]+),'))[1];