ES6

本文深入讲解ES6的新特性,包括变量声明方式如let、const、var的区别,变量解构赋值的灵活用法,字符串的新方法如includes、startsWith、endsWith、repeat等,以及字符串遍历器接口的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ES6学习网址:http://es6.ruanyifeng.com/#docs/string-methods#String-fromCodePoint

1. 变量

let: 类似于var,只在 let 声明的代码块内有效,不存在变量提升

const: const声明一个只读的常量,常量值不会变。

var:全局范围内都有效,var命令会发生“变量提升”现象,即变量可以在声明之前使用

顶层对象,在浏览器环境指的是 window 对象,在 Node 指的是 global 对象。ES5 之中,顶层对象的属性与全局变量是等价的

浏览器里面,顶层对象是window,但 Node 和 Web Worker 没有window。
浏览器和 Web Worker 里面,self也指向顶层对象,但是 Node 没有self。
Node 里面,顶层对象是global,但其他环境都不支持

2. 变量的解构赋值

例子:

一般写法:

let a = 1;
let b = 2;
let c = 3;

ES6 可以这样写

let [a, b, c] = [1, 2, 3];

可以从数组中提取值,按照对应位置,对变量赋值

这种写法属于 “模式匹配”,只要 等号两边 的模式 相同,左边的变量 就会被 赋予对应的值

let [foo, [[bar], baz]] = [1, [[2], 3]];

foo // 1
bar // 2
baz // 3


let [ , , third] = ["foo", "bar", "baz"];

third // "baz"


let [x, , y] = [1, 2, 3];

x // 1
y // 3

let [head, ...tail] = [1, 2, 3, 4];

head // 1
tail // [2, 3, 4]

let [x, y, ...z] = ['a'];

x // "a"
y // undefined
z // []

let [x, y, z] = new Set(['a', 'b', 'c']);
x // "a"

3. 字符串的遍历器接口

for (let codePoint of 'foo') {
  console.log(codePoint)
}

// "f"
// "o"
// "o"

4.   实例方法:includes(), startsWith(), endsWith() 

includes():返回布尔值,表示是否找到了参数字符串。

startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。

endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部

let s = 'Hello world!';

s.startsWith('Hello') // true
s.endsWith('!') // true
s.includes('o') // true

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

let s = 'Hello world!';

s.startsWith('world', 6) // true
s.endsWith('Hello', 5) // true
s.includes('Hello', 6) // false

5.   实例方法:repeat() 

repeat方法返回一个新字符串,表示将原字符串重复n次 ,参数如果是小数,会被取整,不能为负数

6.   padStart(),padEnd()

padStart()用于头部补全,padEnd()用于尾部补全 trimStart(),trimEnd() 

7. trimStart(),trimEnd()   

trimStart()消除字符串头部的空格,trimEnd()消除尾部的空格

8.  字符串的正则方法

字符串对象共有 4 个方法,可以使用正则表达式:match()replace()search()split()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值