es6中新增的字符串方法

时间: 2018-07-02阅读: 77标签: es6

1.字符串模板:用法:`${变量名}`   (好像是C#6.0中也引入了类似的方法。C#中的用法:$"我是{变量名}" ---> $"我叫{name}" ,相当于string.Format() )

//ES6中字符串新的连接的方式 --->字符串模板
 let name = "小样儿",
      age = 18;
 let str = `我叫${name},今年${age}岁!`
console.log(str);    //我叫小样儿,今年18岁!

字符串模板还是还很有用的,方便了我们拼接字符串,以往的 ' + name + ' 方式拼接起来很费劲,而且隔行还得+,很是麻烦


2.字符串查找方法: string.includes('要找得字符串'),返回 布尔值  ps:区分大小写

let str = "呵呵哒哈哈哈1额额额";
console.log(str.includes("呵呵"));    //true

利用includes检查用户使用的浏览器

if (navigator.userAgent.includes('Chrome')) {
     console.log("是谷歌浏览器");
} else {
      console.log("不是谷歌浏览器");
}


3.检查字符串是否已xxx开头---》string.startsWith("要检查的字符串"),检查字符串是否以xxx结尾---》string.endsWith("要检查的字符串")  两者返回的都是bool

{
        //检查字符串是否以XXX开头   --->string.startsWith("要检查的字符串")   返回值bool
        let urlstr = "http://www.baidu.com";
        let urlstr1 = "file:///C:/Users/xxx.html";
        console.log(urlstr.startsWith("https://"));    //false
        console.log(urlstr1.startsWith("file://"))        //true
}
{
        //检查字符串是否以XXX结尾   --->string.endsWith("要检查的字符串")   返回值bool
        let urlstr = "http://www.baidu.com";
        console.log(urlstr.endsWith("baidu.com"));
        let path = "111.jpg";
        console.log(path.endsWith(".png"));
}



4.字符串重复方法---》string.repeat(次数)

//字符串重复    ---》string.repeat(次数);
let str = "小样儿";
console.log(str.repeat(10));     //小样儿小样儿小样儿小样儿小样儿小样儿小样儿小样儿小样儿小样儿
//会输出十次            ---》感觉没什么用处


5.字符串填充 --->string.padStart(整个字符串的长度,"需要填充的字符串") 往字符串前面填充(在字符串前面插入字符串),string.padEnd(整个字符串的长度,"需要填充的字符串") 往字符串后面填充(在字符串后面插入字符串)

let str = "Iphone";
let padStr = "我的";
console.log(str.padStart(str.length + padStr.length, padStr));//我的Iphone

let iphone = "Iphone";    
 let endStr = "10";    
console.log(iphone.padEnd(iphone.length + endStr.length, endStr));    //Iphone10


ES5和ES6对象导出和导入

如果模块中使用 export default {},只能通过 import 对象名称 from 模块路径 ,不能通过 import {对象名称} from 模块路径。如果使用 import {对象名称} from 模块路径 导出具体某个对象或者方法名称

在使用es6语法class的时候,babel到底做了什么?

自从有了webpack之后,我们这些jscoder似乎得到了前所未有的解放,箭头函数,对象解构,let,const关键字,以及class、extends等等,webpack会帮我们把这些es6代码转换成浏览器能够识别的es5代码,那么有多少人真正的看过,babel转换之后的代码呢?

使用ES6让你的React代码提升到一个新档次

ES6使您的代码更具表现力和可读性。而且它与React完美配合!现在您已了解更多基础知识:现在是时候将你的ES6技能提升到一个新的水平!嵌套props解构、 传下所有props、props解构、作为参数的函数、列表解构

ES6 中的一些技巧,使你的代码更清晰,更简短,更易读!

ES6 中的一些技巧:模版字符串、块级作用域、Let、Const、块级作用域函数问题、扩展运算符、函数默认参数、解构、对象字面量和简明参数、动态属性名称、箭头函数、for … of 循环、数字字面量。

es6新特性之 class 基本用法

ES6 提供了更接近传统语言的写法,引入了 class(类)这个概念,作为对象的模板。通过class关键字,可以定义类

基于ES6的tinyJquery

Query作为曾经Web前端的必备利器,随着MVVM框架的兴起,如今已稍显没落。用ES6写了一个基于class简化版的jQuery,包含基础DOM操作,支持链式操作...

ES6 Decorator_js中的装饰器函数

ES6装饰器(Decorator)是一个函数,用来修改类的行为 在设计阶段可以对类和属性进行注释和修改。从本质上上讲,装饰器的最大作用是修改预定义好的逻辑,或者给各种结构添加一些元数据。

ES6 class创建对象和传统方法生成对象的区别

JS语言传统创建对象的方法一般是通过构造函数,来定义生成的,下面是一个使用function生成的例子。ES5是先新建子类的实例对象this,再将父类的属性添加到子类上,由于父类的内部属性无法获取,导致无法继承原生的构造函数

ES6的7个实用技巧

ES6的7个实用技巧包括:1交换元素,2 调试,3 单条语句,4 数组拼接,5 制作副本,6 命名参数,7 Async/Await结合数组解构

ES6中let变量的特点,使用let声明总汇

ES6中let变量的特点:1.let声明变量存在块级作用域,2.let不能先使用再声明3.暂时性死区,在代码块内使用let命令声明变量之前,该变量都是不可用的,4.不允许重复声明