Vue判断字符串(或数组)中是否包含某个元素的方法总结

Vue判断字符串中是否包含某个字符串,方法有好多种

方法一:includes方法(数组,字符串都可以)

1

2

3

var str = “Hello World!”;

if(str.includes(“World”)){

}

数组兼用,举例如下:

1

2

3

let animals = [“cat”, “dog”, “pig”, “deer”]

animals.includes(“deer”) // true

animals.includes(“horse”) // false

该函数返回一个布尔值,表示该值是否存在。

方法二:indexOf方法(数组,字符串都可以)

1

2

3

4

var str = “Hello World!”;

//注意:!=-1即为为真,可以找到得情况

if(str.indexOf(“World”) != -1){

}

数组兼用,举例如下:

在需要查找的元素的确切位置的情况下,可以使用indexOf(param)方法,该方法在指定的数组中查找param并返回其第一次出现的索引,如果数组不包含param则返回-1。

例如,我们可以在包含 grade 的数组中查找第一次出现的 grade:

1

2

3

let grades = [“A”, “B”, “C”, “D”]

grades.indexOf(“A”) // 0

grades.indexOf(“F”) // -1

方法三 :search方法

1

2

3

4

var str = “Hello World!”;

//注意:!=-1即为为真,可以找到得情况

if(str.search(“World”) != -1){

}

方法四:match方法

该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。

1

2

3

4

5

var str=‘12334';

var reg=RegExp(/3/);

if(str.match(reg)){

//包含

}

方法五:text方法

如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false

1

2

3

var str = “123456”;

var reg = RegExp(/2/);

console.log(reg.test(str)); // true

方法六:exec方法(数组可以,字符串未测)

如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false

1

2

3

4

var str = “123456”;

var reg = RegExp(/2/);

if(reg.exec(str)){

//包含}

方法七:some() 方法

在搜索对象时,include()检查提供的对象引用是否与数组中的对象引用匹配。有时候这不是我们想要的,因为对象可以有相同的字段和相应的值,但引用不同。

我们可以使用some()方法根据对象的内容进行搜索。some()方法接受一个参数,接受一个回调函数,对数组中的每个值执行一次,直到找到一个满足回调函数设置的条件的元素,并返回true。

为了更好地理解它,让我们看看一些 some()的实际应用:

1

2

3

let animals = [{name: “dog”}, {name: “horse”}, {name: “cat”}]

let element = {name: “cat”}

animals.some(animal => animal.name === element.name)

回调函数在前两种情况下返回 false,但在第三个情况下返回 true,因为名称匹配。 此后,some()暂停执行并返回 true。
由此可见,some()函数可帮助我们根据对象的内容搜索对象的存在。

你可能感兴趣的:(javascript,前端,vue.js)