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. Yii2实现跨mysql数据库关联查询排序功能

    遇到一个项目,需要跨表网上找了很多的资料,整理一下,方便以后再次使用 背景:在一个mysql服务器上(注意:两个数据库必须在同一个mysql服务器上)有两个数据库: memory (存储常规数据表) ...

  2. linux C 数组与指针

    linux C 数组与指针 一.数组 数组是同一数据类型的一组值:属于引用类型,因此数组存放在堆内存中:数组元素初始化或给数组元素赋值都可以在声明数组时或在程序的后面阶段进行. 定义一维数组的一般格式 ...

  3. 【转载】C#批量插入数据到Sqlserver中的三种方式

    引用:https://m.jb51.net/show/99543 这篇文章主要为大家详细介绍了C#批量插入数据到Sqlserver中的三种方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本篇, ...

  4. PHP实现qq三方登录

    除了qq第三方登录外.还有微博,微信等第三方登录 qq第三方登录,遵循oauth2.0协议 这里是说明http://www.cnblogs.com/yx520zhao/p/6616686.html q ...

  5. PLY手册翻译

    https://www.kancloud.cn/kancloud/ply/42143 http://wiki.jikexueyuan.com/project/python-lex-yacc/ply-0 ...

  6. 25-IHostEnvironment和 IApplicationLifetime介绍

    //类似 global.ashx的application事件的实现1-Startup类中 public void Configure(IApplicationBuilder app, IHosting ...

  7. SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID

    如题: SDK location not found. Define location with sdk.dir in the local.properties file or with an AND ...

  8. 如何使用API创建OpenStack虚拟机?

    在安装时OpenStack会加载配置信息.有不同的虚拟机模板而且与在Amazon EC2以及其他平台上看到的完全一样.这些配置是内存.vCPU.磁盘容量等的组合,定义了虚拟机的大小及容量.可以使用如下 ...

  9. 独立开发unity2d游戏的问答群

    129443731 有志独立开发游戏的,只讨论最新的unity2d技术的.群里面主要已问答为主,喜欢聊天的就别加群了,灌水多了会被t.希望能对unity2d比较了解的已及喜欢学习的人加入.

  10. 剑指Offer - 九度1508 - 把字符串转换成整数

    剑指Offer - 九度1508 - 把字符串转换成整数2014-02-06 23:46 题目描述: 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 输入: 输入可能包含多个测试样例 ...