我不明白为什么它应该输出“现在”时会输出“现在”。

mainQueryString = 'now ';
mainQueryString = mainQueryString.replace('/\s+$/g', ''); /* query without the ending space */
console.log('mainQueryString:', '\''+mainQueryString+'\'');

仍然输出 'now '(最后有空格)。

最佳答案

只需在正则表达式模式周围删除那些单引号,不匹配文字字符串,而是根据 javascript 语法匹配模式:

mainQueryString = mainQueryString.replace(/\s+$/g, '');
console.log('mainQueryString:', '\''+mainQueryString+'\'');// 'now'

值得一提的是,trim() 方法在较旧的浏览器中不可用,例如 IE7 - 更多关于它的信息:Trim string in JavaScript?

关于javascript - 从字符串末尾删除空格不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29508081/

10-11 23:44