Javascript 选择保存split()的一个索引
Javascript selecting to save one index of split()
我有一个值 - toggle-save_2
我想提取 2
部分。 underscore
之后的部分将始终是我需要的部分,但前一部分的长度(在本例中为 toggle-save_
)可能会有所不同(例如 notoggle-val_45)。尽管此长度可能会有所不同,但它始终会通过 underscore
.
与结束编号分隔
我现在正在用这个
var current = this.id.split('_');
current = current[1];
到select的数量。
如果我可以将一个变量传递给拆分,只给我拆分结果的第二个索引,那就太棒了。
进行拆分时,只需 select 第二个索引。
var current = this.id.split('_')[1];
split
方法只能从末尾限定,永远return一个数组
不需要使用split
,可以使用字符串操作获取部分字符串:
var current = this.id.substr(this.id.indexOf('_') + 1);
这里最好的解决方案是使用 lastIndexOf
and substring
,像这样
function getLastPart(strObject) {
return strObject.substring(strObject.lastIndexOf("_") + 1);
}
console.log(getLastPart("toggle-save_2"));
// 2
console.log(getLastPart("notoggle-save_45"));
// 45
对于这种情况更好,因为您已经知道 _
将位于最后一个位置附近。由于 lastIndexOf
从最后一个位置开始,它很快就会找到 _
,我们需要做的就是从下一个位置获取字符串的其余部分。
我经常在拆分字符串时只需要 String.prototype.split
结果的最后一个值,而不管拆分产生多少个值,其余的都视为垃圾。
当出现这些情况时,我喜欢将 Array.prototype.pop
与 split
联系起来
var s = 'toggle-save_2',
current = s.split('_').pop();
我有一个值 - toggle-save_2
我想提取 2
部分。 underscore
之后的部分将始终是我需要的部分,但前一部分的长度(在本例中为 toggle-save_
)可能会有所不同(例如 notoggle-val_45)。尽管此长度可能会有所不同,但它始终会通过 underscore
.
我现在正在用这个
var current = this.id.split('_');
current = current[1];
到select的数量。
如果我可以将一个变量传递给拆分,只给我拆分结果的第二个索引,那就太棒了。
进行拆分时,只需 select 第二个索引。
var current = this.id.split('_')[1];
split
方法只能从末尾限定,永远return一个数组
不需要使用split
,可以使用字符串操作获取部分字符串:
var current = this.id.substr(this.id.indexOf('_') + 1);
这里最好的解决方案是使用 lastIndexOf
and substring
,像这样
function getLastPart(strObject) {
return strObject.substring(strObject.lastIndexOf("_") + 1);
}
console.log(getLastPart("toggle-save_2"));
// 2
console.log(getLastPart("notoggle-save_45"));
// 45
对于这种情况更好,因为您已经知道 _
将位于最后一个位置附近。由于 lastIndexOf
从最后一个位置开始,它很快就会找到 _
,我们需要做的就是从下一个位置获取字符串的其余部分。
我经常在拆分字符串时只需要 String.prototype.split
结果的最后一个值,而不管拆分产生多少个值,其余的都视为垃圾。
当出现这些情况时,我喜欢将 Array.prototype.pop
与 split
var s = 'toggle-save_2',
current = s.split('_').pop();