JS中判断某个字符串是否包含另一个字符串的五种方法

下面我会给您详细讲解JS中判断某个字符串是否包含另一个字符串的五种方法,并提供相应代码示例进行说明。

方法一:使用indexOf

indexOf函数在判断字符串包含的时候是最常用的方法之一,它返回的值为所查找的字符串首次出现的位置,如果没有找到则返回-1。

let str1 = "hello world";
let str2 = "world";
if (str1.indexOf(str2) !== -1) {
    console.log("str1包含str2");
} else {
    console.log("str1不包含str2");
}

以上代码中的indexOf()函数返回的值不是布尔类型而是数字类型,因此需要使用不等于运算符"!=="来判断。

方法二:使用includes

includes()函数在ES6中才被引入,如果在项目中使用此方法,需注意浏览器兼容性。当所查询的字符串包含在原字符串中时返回true,否则返回false。

let str1 = "hello world";
let str2 = "world";
if (str1.includes(str2)) {
    console.log("str1包含str2");
} else {
    console.log("str1不包含str2");
}

方法三:使用search

search()函数用于返回一个字符串中指定的值第一次出现的位置。如果没有找到任何匹配的则返回-1。

let str1 = "hello world";
let str2 = "world";
if (str1.search(str2) !== -1) {
    console.log("str1包含str2");
} else {
    console.log("str1不包含str2");
}

以上代码中的search()函数也是返回数值类型,所以需要用不等于运算符来判断。

方法四:使用正则表达式

使用正则表达式可以检测一个字符串中是否含有符合特定规则的字符串,如下:

let str1 = "hello world";
let str2 = "world";
let reg = new RegExp(str2);
if (reg.test(str1)) {
    console.log("str1包含str2");
} else {
    console.log("str1不包含str2");
}

以上代码中,我们使用了一个正则表达式对象RegExp(),这个对象可以用来创建一个正则表达式。

方法五:使用substr

substr()函数可返回指定位置的字符串。

let str1 = "hello world";
let str2 = "world";
if (str1.substr(-str2.length) === str2) {
    console.log("str1包含str2");
} else {
    console.log("str1不包含str2");
}

以上代码中,我们使用了substr()函数截取最后6个字符,然后判断它们是否与str2相等。

以上就是JS中判断某个字符串是否包含另一个字符串的五种方法,您可以根据自己的需求来选择使用哪一个方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS中判断某个字符串是否包含另一个字符串的五种方法 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • JAVA使用Gson解析json数据实例解析

    简介 JSON是一种轻量级的数据交换格式,很多时候我们需要在Java中使用JSON格式进行数据的传递或解析,在Java中使用Gson库可以方便地实现JSON的解析和生成。 Gson是Google提供的Java解析JSON的库,它可以将JSON字符串转化为Java对象,也可以将Java对象转化为JSON字符串。 基本概念 在使用Gson进行JSON解析时,需要…

    JavaScript 2023年6月11日
    00
  • vue-router的两种模式的区别

    Vue Router 是一个官方的 Vue.js 路由管理器,它可以将组件与标识符映射为路由,然后将其传递给 Vue.js 实例进行渲染,在 Vue Router 中主要有两种路由模式:hash 模式和 history 模式。 hash 模式 hash 模式就是将路由信息放在 url 中的 hash (#)中,这种模式下的 url 格式为: http://l…

    JavaScript 2023年6月11日
    00
  • vue-router两种模式区别及使用注意事项详解

    Vue-router两种模式区别及使用注意事项详解 前言 在学习Vue时,经常会使用Vue-router来实现前端路由。Vue-router有两种模式:history模式和hash模式。本篇文章将详细讲解这两种模式的区别,并给出使用注意事项。 区别 Hash模式 默认模式是hash模式,即地址栏的URL格式是以#/开头,比如: http://localhos…

    JavaScript 2023年6月11日
    00
  • JS中Object对象的原型概念基础

    JS中的Object对象是所有对象的基础,它的原型概念是JS中面向对象编程的重要基础概念之一。下面就来详细讲解一下Object对象的原型概念基础,包括什么是原型、原型链、如何利用原型链实现继承等。 什么是原型 在JavaScript中,每个对象都有一个指向它的原型对象。除了基础属性和方法外,原型对象本身也有可能有自己的属性和方法。借助原型,可以实现对象之间的…

    JavaScript 2023年5月27日
    00
  • 浅析JavaScript中的Proxy对象

    浅析JavaScript中的Proxy对象 什么是Proxy对象 Proxy是ES6中新增的一个特性,用于拦截并可自定义处理对象的各种读写操作。Proxy是一个代理对象,它包装了原始对象,对原始对象进行拦截,从而使得原始对象的行为可以由代理对象来控制和修改。 Proxy对象的作用 Proxy对象主要有以下两个作用: 拦截并处理对象的读取和赋值操作:通过Pro…

    JavaScript 2023年6月10日
    00
  • Javascript级联下拉菜单以及AJAX数据验证核心代码

    Javascript级联下拉菜单以及AJAX数据验证都是在网页开发中会用到的技术,其作用分别是实现前端的交互体验和安全性验证。下面,我将为您提供完整的攻略。 Javascript级联下拉菜单 1. HTML结构 下拉菜单通常是由HTML的标签实现的,因此我们先来构建HTML的结构。 <label for="province">…

    JavaScript 2023年6月10日
    00
  • JavaScript的==运算详解

    当使用==运算符时,JavaScript将使两个变量之间的比较。==运算符比较两个变量的值,并将其转换为相同类型的值(如果必要),然后进行比较。在本文中,我们将深入探讨==运算符,并解释它是如何运作的。 为什么==运算符容易引起混淆? 在使用==运算符时,我们有一个经常遇到的问题:当我们比较两个不同类型的变量时,结果会出现惊人的错误。例如,以下代码将返回tr…

    JavaScript 2023年5月28日
    00
  • JavaScript运动函数实例详解

    JavaScript运动函数实例详解 运动函数是实现网页动画效果的必备工具之一,JavaScript中有多种运动函数实现方式,其中以JavaScript的定时器方式实现最为常见。本文将详细讲解使用JavaScript定时器实现运动函数的方法,同时给出两个示例说明。 定时器 JavaScript中用于实现定时器的函数是setInterval()和setTime…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部