js去除字符串首尾空格
2017-09-11 08:50
405 查看
大家可能会说js删除字符串首尾空格有什么好说的, 哪个不会啊。确实,大家应该都会, 现在浏览器都支持, 不支持的可以使用ployfill,代码如下
之所以写这篇文章, 是我从java处得到了启发。大多的ployfill都会有恼人的正则, 真的很难理解。我来贴下java的trim
大家应该都能看得懂, java源码认为asc码小于' '都是空格字符,找到头部不是空格字符的索引, 再获取尾部不是空格字符的索引, 中间就是我们trim之后的字符了。那我来写一个js的trim
if (!String.prototype.trim) { String.prototype.trim = function () { return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); }; }
之所以写这篇文章, 是我从java处得到了启发。大多的ployfill都会有恼人的正则, 真的很难理解。我来贴下java的trim
public String trim() { int len = value.length; int st = 0; char[] val = value; /* avoid getfield opcode */ while ((st < len) && (val[st] <= ' ')) { st++; } while ((st < len) && (val[len - 1] <= ' ')) { len--; } return ((st > 0) || (len < value.length)) ? substring(st, len) : this; }
大家应该都能看得懂, java源码认为asc码小于' '都是空格字符,找到头部不是空格字符的索引, 再获取尾部不是空格字符的索引, 中间就是我们trim之后的字符了。那我来写一个js的trim
if (!String.prototype.trim) { String.prototype.trim = function () { var len = this.length; var st = 0; while((st < len) && (this[st] <= ' ')) { st++; } while((st < len) && (this[len - 1] <= ' ')){ len--; } return ((st > 0) || (len < this.length)) ? this.substring(st, len - st) : this; }; }
相关文章推荐
- js---在前端开发中,如何通过正则表达式去除字符串string首尾的空格,JavaScript正则去除首尾空格
- JS一行代码去除字符串首尾空格
- JS一行代码去除字符串首尾空格
- swift 去除字符串中首尾位置的空格
- JS去除字符串所有的空格和换行
- JS取出字符串首尾空格正则
- bash 中 trim 字符串(去除首尾空格) - grep 去空行
- JS去除字符串两端空格的简单实例
- js去除字符串空格
- JS去除字符串的空格增强版(可以去除中间的空格)
- js去除字符串所有空格
- js中使用正则表达式去除字符串前后空格
- 去除字符串中的首尾空格并将连续的空格变为一个
- js中自定义去除字符串两端的空格
- 【美团校招笔试题】去除字符串首尾空格,中间多个空格只保留一个
- 利用切片操作,实现一个trim()函数,去除字符串首尾的空格
- js 去除字符串所有空格
- [py]str list切片-去除字符串首尾空格-递归思想
- 原生js去除字符串空格
- 去除字符串首尾空格