【发布时间】:2015-03-30 13:02:09
【问题描述】:
我有一些数字字符串是:
var _ids = 130,131,240;
我需要从这个字符串中获取一些数字,即 131,我不能使用 .split() 方法,因为逗号之间的数字可以更多,而不是这个我知道实际 id 是数字 130(在这个例子中),所以我正在这样做:
var _id = 130;
var id = _ids.substring(_ids.lastIndexOf((_id + ',') + 1), _ids.lastIndexOf(','));
结果我有130,136...我做错了什么?有人可以帮忙吗?
【问题讨论】:
-
split()绝对是这里最好的解决方案。如果你能解释为什么你需要检索131背后的规则(它总是你需要的第二个值,还是倒数第二个,还是中间的?)那么我相信可以找到一个更优雅的解决方案。跨度> -
您需要将
_ids声明用引号括起来,例如var _ids = "130,131,240";才能正常工作。无论如何,当您已经知道数字时,为什么还需要从字符串中获取数字? -
你是怎么得到
130,136的? -
从后端它是一些DOM元素的数据属性的值
-
你误会了
lastindexof我想。它不会给你传递字符串中最后一个字符的索引,而是给定字符串最后一次出现的索引。由于您在代码中将数字 130 与字符,和1连接并查找它们的索引,因此您将零作为子字符串方法的开始参数,最后出现,作为结束参数返回 @ 987654333@(依赖你的 _ids 变量)
标签: javascript jquery string comma