如何在AngularJS
中编写代码以删除最后一个索引“,”。
这是等效的java代码:
stringBuilder.deleteCharAt(stringBuilder.lastIndexOf(","));
请帮忙。
答案 0 :(得分:2)
有趣的是,在浏览器控制台中玩游戏时,我注意到某些内容(扩展名或StackOverflow的JS)添加了String.prototype.splitOnLast
,如下所示:
function (d){d=this.lastIndexOf(d);return 0>d?[this]:[this.substr(0,d),this.substr(d)]}
看起来像这样:
function splitOnLast(str, sep) {
index = str.lastIndexOf(sep);
return 0 > index ? [str] : [str.substr(0, index), str.substr(index)];
}
...虽然返回最后一个','作为第二个数组元素的一部分...所以你需要将索引加一:
function splitOnLast(str, sep) {
index = str.lastIndexOf(sep);
return 0 > index ? [str] : [str.substr(0, index), str.substr(index + 1)];
}
有趣的...社区wiki'ed
答案 1 :(得分:2)
你可以
str = str.replace(/,([^,]*)$/, "$1");
或
var pos = str.lastIndexOf(",");
str = str.substr(0, pos) + str.substr(pos + 1);