一、查找字符串

在ES5中,可以使用 indexOf 方法和 lastIndexOf 方法查找字符串:

let str = 'hello world';
alert(str.indexOf('o')); //
alert(str.lastIndexOf('o')); //
alert(str.lastIndexOf('z')); // -1

ES6中,又新增了3个方法用于特定字符的查找。

1、includes()

该方法传入一个字符串参数,然后返回一个布尔值,表示是否在指定字符串中找到了该字符串片段。

let str = 'hello';
console.log(str.includes('h')); // true
console.log(str.includes('z')); // false

2、startsWith()

该方法传入一个字符串参数,然后返回一个布尔值,表示是否在指定字符串开头找到了该字符串片段。

let str = 'hello';
console.log(str.startsWith('h')); // true
console.log(str.startsWith('lo')); // false

3、endsWith()

该方法传入一个字符串参数,然后返回一个布尔值,表示是否在指定字符串末尾找到了该字符串片段。

let str = 'hello';
console.log(str.endsWith('h')); // false
console.log(str.endsWith('o')); // true

二、操作字符串

1、repeat()

对一个字符串进行重复,返回一个新字符串。

let str = 'ha';
console.log(str.repeat(3)); 'hahaha'

参数如果是小数,会被向下取整进行操作。

let str = 'ha';
console.log(str.repeat(2.9)); 'haha'

参数如果是负数,会报错。

let str = 'ha';
console.log(str.repeat(-2)); // error

三、模板字符串

ES6引入了模板字符串,用反引号标识( ` ),主要功能有俩个。

1、定义多行字符串。

let str = `hello
hello
hello`;
console.log(str)
// hello
// hello
// hello

2、在字符中嵌入变量,把变量包裹在 ${} 中即可。

var username = 'tom';
alert(`hello ${username}`); // hello tom

ES6中字符串的扩展的更多相关文章

  1. ES6 中字符串的扩展

    1. 字符的Unicode表示法 JavaScript允许采用 \uxxxx 形式表示一个字符,其中 xxxx 表示字符的 Unicode 码点. "\u0061" // 表示小写 ...

  2. ES6中字符串扩展

    ES6中字符串扩展 ① for...of 遍历字符串: 例如: for(let codePoint of 'string'){ console.log(codePoint) } 运行结果: ②  in ...

  3. ES6中字符串的新增方法梳理

    1.String.fromCodePoint(); String,fromCodePoint()方法可以认为是对String.fromCharCode()方法的扩展,这两个方法的共同点在于都是用于Un ...

  4. ES6中对象的扩展

    ES6不仅为字符串.数值和数组带来了扩展,也为对象带来了很多新特性.这一节,我们来一起学习一下对象的扩展. 对象的传统表示法 我们回顾一下,对象的传统表示法: let person = { " ...

  5. ES6中函数的扩展

    一.设置默认参数 ES6之前,给函数设置默认参数是这样做的: function fn(a) { if(typeof y === undefined){ a = a || 'hello'; } cons ...

  6. ES6中字符串模板的使用

    反撇号(键盘上Tab键上面那个)基础知识 ES6引入了一种新型的字符串字面量语法,我们称之为模板字符串(template strings).除了使用反撇号字符代替普通字符串的引号 ‘ 或 ” 外,它们 ...

  7. 关于es6中对象的扩展

    1.Object.is() es5比较两个值是否相等,只有两个运算符,相等(==) 和 严格相等(===),他们都有缺点,前者会自动转换数据类型,后者的NaN不等于自身,以及+0 等于 -0.es6提 ...

  8. es6(三):es6中函数的扩展(参数默认值、rest参数、箭头函数)

    1.函数可以设置参数默认值 function test1(x,y=1){ console.log(x,y) } test1(10)//10 1 2.rest参数:形式为...变量名 function ...

  9. ES6中数组和对象的扩展运算符拷贝问题以及常用的深浅拷贝方法

    在ES6中新增了扩展运算符可以对数组和对象进行操作.有时候会遇到数组和对象的拷贝,可能会用到扩展运算符.那么这个扩展运算符到底是深拷贝还是浅拷贝呢? 一..使用扩展运算符拷贝 首先是下面的代码. le ...

随机推荐

  1. php 连接redis查询数据

    class Layoutdemo{ function index(){ $db = new Db(); $id=390; $layout_json = array(); if($info = $db- ...

  2. Sum of Consecutive Prime Numbers(素数打表+尺取)

    Description Some positive integers can be represented by a sum of one or more consecutive prime numb ...

  3. PMS

    "通讯录--PMS"功能介绍及界面展示 首先是我们的登陆界面,以绿色为基调,配以繁星组成的星阵图,寓意为"散是满天星",希望每一位同学能在各自的生活中闪耀. 当 ...

  4. LintCode-165.合并两个排序链表

    合并两个排序链表 将两个排序链表合并为一个新的排序链表 样例 给出 1->3->8->11->15->null,2->null, 返回 1->2->3- ...

  5. 某一线互联网公司前端面试题总结css部分

    1,css3选择器 :not(selector) 选择页面内所有type!=text的类型: input:not([type=text]){ color: red; font-weight: bold ...

  6. Android OCR文字识别 实时扫描手机号(极速扫描单行文本方案)

    身份证识别:https://github.com/wenchaosong/OCR_identify 遇到一个需求,要用手机扫描纸质面单,获取面单上的手机号,最后决定用tesseract这个开源OCR库 ...

  7. JAVA IDE IntelliJ IDEA使用简介(二)—之基本操作

    一.在编辑器中打开文件  1.可以使用下面的几种方式打开project内的文件进行编辑  (·)在project窗口中双击需要编辑的文件.  (·)在project窗口选择需要编辑的文件,按F4  ( ...

  8. DELPHI的MEMO组件

    位于Standard选项卡上,它是对EDIT控件的扩展,可以对多行文本进行显示.输入 和编辑. Lines属性: 该属性实际上为TStrings类型的对象,用来存放Memo对象的文本 TStrings ...

  9. 在mvc返回JSON时出错:序列化类型为“System.Data.Entity.DynamicProxies.Photos....这个会的对象时检测到循环引用 的解决办法

    在MVC中返回JSON时出错,序列化类型为“System.Data.Entity.DynamicProxies.Photos....这个会的对象时检测到循环引用. public ActionResul ...

  10. 移动端body跟着模态框一起滑动问题

    遇到了一个问题,是点击链接出现弹框,弹框里面的内容是可以滑动的,结果我滑动的时候发现下面的body也跟着一起滑动,先看一下代码. 弹框的 HTML: <div class="mask& ...