es5中我们经常使用indexof()方法来判断一个字符串是否包含另外一个字符串中。

如果存在则返回匹配到的第一个索引值。如果没有则返回 -1。所以,判断一个字符串是否包含另外一个字符串中只需要判断是否为-1就行。-1代表不存在。

例如:

let str = 'Hello World!';
console.log(str.indexOf('H'));//0 str中"H"的出现的第一个索引为0
console.log(str.indexOf('o'));//4 str中"o"第一个出现的位置的索引为4
console.log(str.indexOf('a'));//-1 没找到,返回-1

虽然Es5中该方法经常使用,但是Es6提供了更加便捷的方法。

1. str.includes('');

有返回true,没有返回false。也不用为记住-1而发愁了!!

let str = 'Hello World!';
console.log(str.includes('H'));//true
console.log(str.includes('a'));//false

2.startsWith()

判断该字符串是否为某个字符串的首位。有就是true,不是就是false。

let str = 'Hello World!';
console.log(str.startsWith('H'));//true
console.log(str.startsWith('Hello'));//true
console.log(str.startsWith('e'));//false

3.endsWith()

和startsWith()相反。判断是否为末尾。

let str = 'Hello World!';
console.log(str.endsWith('!'));//true
console.log(str.endsWith('d!'));//true
console.log(str.endsWith('e'));//false

这三个方法都支持第二个参数,表示看是搜索的位置。

let str = 'Hello World!';
console.log(str.includes('World',5));//true 从索引5(包含索引5)开始搜索
console.log(str.includes('World',7));//false
console.log(str.startsWith('lo',3))//true
console.log(str.startsWith('H',3));//false
console.log(str.endsWith('el',3));//true
endsWith()和上面两个不一样,它的第二个参数代表前几个。“Hel”,所以返回true

ES6--javascript判断一个字符串是否存在另一个字符串中的更多相关文章

  1. 【前端】javascript判断undefined、null、NaN;字符串包含等

    JS中判断null.undefined与NaN的方法 这篇文章主要介绍了JS中判断null.undefined与NaN的方法,需要的朋友可以参考下 . . 写了个 str ="s" ...

  2. JavaScript 判断一个字符串是否在另一个字符串中

    传统上,JavaScript只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中.ES6又提供了三种新方法. includes():返回布尔值,表示是否找到了参数字符串. start ...

  3. Jquery 选择器 详解 js 判断字符串是否包含另外一个字符串

    Jquery 选择器 详解   在线文档地址:http://tool.oschina.net/apidocs/apidoc?api=jquery 各种在线工具地址:http://www.ostools ...

  4. Javascript 判断一个数字是否含有小数点

    JavaScript 判断一个数字是否含有小数点,如果含有,则返回该数字:如果不含小数点,则小数点后保留两位有效数字: function hasDot(num){ if(!isNaN(num)){ r ...

  5. JSON.stringify()方法是将一个javascript值(对象或者数组)转换成为一个JSON字符串;JSON.parse()解析JSON字符串,构造由字符串描述的javascript值或对象

    JSON.stringify()方法是将一个javascript值(对象或者数组)转换成为一个JSON字符串:JSON.parse()解析JSON字符串,构造由字符串描述的javascript值或对象

  6. javascript判断一个元素是另外一个元素的子元素

    javascript判断一个元素是另外一个元素的子元素用途有很多,最常用的就是当点击页面的空白处去执行某些操作,比如弹出层等. function isParent (obj,parentObj){ w ...

  7. php字符串查找函数 php查找字符串中出现的次数函数substr_count,判断字符串中是否包含另一个字符串函数strpos

    php字符串查找函数 php查找字符串中出现的次数函数substr_count,判断字符串中是否包含另一个字符串函数strpossubstr_count($haystack, $needle [,$o ...

  8. JavaScript判断字符串中出现次数最多的字符,并统计其次数

    要求: 输出一个给定字符串``中出现次数最多的字符,并统计其次数. 实现思路: 利用charA()遍历这个字符串 把每个字符都存储给对象,如果对象没有该属性,就先幅值为1,如果存在了就+1 遍历对象, ...

  9. ES6+javaScript原型

    Symbol 属性私有化,数据保护 let _gender = Symbol('gender') function Person(name, gender) { this.name = name; t ...

随机推荐

  1. swoole学习(一)----linux安装swoole

    1.下载swoole 登录swoole官网 https://www.swoole.com/ 点击下载,找到github或者其他链接下载下来 放到虚拟机上. 也可以使用虚拟机下载 2.登录虚拟机 推荐使 ...

  2. python爬虫-简单使用xpath下载图片

    首先 1.为方便以下进行 谷歌浏览器里要安装xpath脚本 2.下载一个lmxl     命令:pip install lxml 3. 以下三张图是一个,当时爬的 <糗事百科>里的图片 值 ...

  3. POJ:2100-Graveyard Design(尺取)

    Graveyard Design Time Limit: 10000MS Memory Limit: 64000K Total Submissions: 8504 Accepted: 2126 Cas ...

  4. Poweroj:2425-跳台阶(经典递推)

    题目链接:https://www.oj.swust.edu.cn/problem/show/2425 跳台阶 Edit Manage Data Rejudge Time Limit: 1000 MS ...

  5. POJ:2976-Dropping tests(二分平均值)

    Dropping tests Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15508 Accepted: 5418 Descr ...

  6. tomcat7 配置 https安全访问

    在apache-tomcat-7.0.33-windows-x64.zip配置https,结果在配置SSL时遇到一些问题 1.用JDK自带的keytool来生成私有密钥和自签发的证书,如下: keyt ...

  7. Java线程---简介

    实现方式 在java中线程有两种实现方式: 1.继承thread类 2.实现runnable接口 Thread类 Thread类时在java.lang包中定义的,继承thread类必须重写run()方 ...

  8. python开发记录第一篇

    1. 安装pyCharm,下载地址https://www.jetbrains.com/pycharm/ 2. 注册license,修改windwos系统hosts,文件路径为:C:\Windows\S ...

  9. Erlang OTP设计原则Gen_Fsm行为[转]

    转自: http://www.cnblogs.com/yourihua/archive/2012/05/13/2497776.html 1. Fsm 称为 有限状态机,举个例子,游戏中的怪物称为NPC ...

  10. 《Cracking the Coding Interview》——第13章:C和C++——题目7

    2014-04-25 20:18 题目:给定一个Node结构体,其中包含数据成员和两个Node*指针指向其他两个Node结构(还不如直接说这是个图呢).给你一个Node指针作为参数,请做一份深拷贝作为 ...