js中的indexOf以及startsWith和endsWith方法
16lz
2021-01-22
js有indexOf方法,却没有像java一样的startsWith 或者 endsWith 这样的方法。
比如下面的例子:(功能:希望输入的值不包含空格)
if(str.indexOf(' ') != -1 ){
alert("不能含有空格");
}
这个方法可以检查到 str 的开头,中间,结尾是不是空格。
但如果用下面这个方法,却只能检测到 str 中间 和 结尾的空格,检测不到str开头的空格。
if(str.indexOf(' ') > 0){
alert("不能含有空格");
}
因为indexOf 的结果是从0开始的, 而 > 0 就是说排除了第一个 !
js中startWith和endWith的扩展:
String.prototype.endWith = function(str){ if(str==null || str=="" || this.length == 0 ||str.length > this.length){ return false; } if(this.substring(this.length - str.length)){ return true; }else{ return false; } return true; }; String.prototype.startWith = function(str){ if(str == null || str== "" || this.length== 0 || str.length > this.length){ return false; } if(this.substr(0,str.length) == str){ return true; }else{ return false; } return true; };
更多相关文章
- AngularJs:在内部调用$ http或$ resource时,让方法同步返回
- 使用append方法将对象转换为字符串
- javascript encodeURIComponent并将空格转换成+符号
- jQuery Ajax未能调用MVC 4控制器方法。
- 使用python实现菱形的两种方法
- Win7 64为Sublime Text3 配置python3的开发环境的方法
- 更简单的方法来启用详细日志记录
- Python安装模块(numpy等)问题的两种解决办法——常规方法和Anacond
- python魔法方法、构造函数、序列与映射、迭代器、生成器