站长资讯网
最全最丰富的资讯网站

es6怎么判断字符串中是否有某个字符串

判断方法:1、利用includes(),语法“str.includes(searchString[, position])”;2、利用indexOf(),语法“str.indexOf(substring)”,如果返回“-1”则没有;3、利用test()、match()或search()配合正则表达式查找,语法“exp.test(str)”、“str.match(exp)”。

es6怎么判断字符串中是否有某个字符串

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

es6判断字符串是否包含子字符串的方法

方法1:利用includes()函数

ES6的字符串新增了includes方法,我们可以用它来判断是否包含子字符串。

str.includes(searchString[, position])
登录后复制

  • searchString:查询的子字符串

  • position:可选,开始搜索的位置,默认为0

'Blue Whale'.includes('Blue'); // returns true 'Blue Whale'.includes('blue'); // returns false
登录后复制

需要注意的是,includes方法是会区分大小写。

对于不支持es6的浏览器,可以添加es6-shim,如:

require('es6-shim')
登录后复制

方法2:利用indexOf()函数

indexOf是我们比较常用到判断是否包含子字符串的方法。如果包含子字符串,返回子字符串的索引,否则返回-1。

var string = "foo",     substring = "oo"; if(string.indexOf(substring) == -1) {   console.log("不包含子字符串") } else {   console.log("包含子字符串") }
登录后复制

方法3:利用正则表达式

使用正则表达式有三种方式:test,match,search

1、test

var string = "foo",     exp = /oo/; var result = exp.test(string);
登录后复制

test返回的是一个布尔值。存在返回true,否则返回false。

注意test函数调用者是正则表达式。

2、match

var string = "foo",     exp = /oo/; var result = string.match(exp); console.log(result);
登录后复制

输出结果:

["oo", index: 1, input: "foo"]
登录后复制

调用者是字符串,如果匹配到返回一个数组,包含了匹配到的内容:正则表达式,index和input。

3、search

var string = "foo",     exp = /oo/; var result = string.search(exp);
登录后复制

返回的是搜索到的子字符串的索引,搜索不到返回-1

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号