加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ES6 常用语法

发布时间:2020-12-16 23:18:19 所属栏目:百科 来源:网络整理
导读:什么是ES6 ECMAScript 6 简称ES6,在2015年6月正式发布~? ECMAScript 是JavaScript语言的国际标准。 我们本着二八原则,掌握好常用的,有用的~能让我们更快的上手~~~ 1? 声明变量const? let? var ES6以前 var关键字来声明变量,无论声明在何处都存在变量提升

什么是ES6

ECMAScript 6 简称ES6,在2015年6月正式发布~? ECMAScript 是JavaScript语言的国际标准。

我们本着二八原则,掌握好常用的,有用的~能让我们更快的上手~~~

1? 声明变量const? let? var

ES6以前 var关键字来声明变量,无论声明在何处都存在变量提升这个事情~~会提前创建变量~

作用域也只有全局作用域以及函数作用域~ 所以变量会提升在函数顶部或全局作用域顶部~

let 关键字表示变量,const 表示常量。都是块级作用域,比如一个函数内部,代码块{}内部~

global = "global"</span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; 函数内变量的提升</span> <span style="color: #0000ff;"&gt;function</span><span style="color: #000000;"&gt; aa() { </span><span style="color: #0000ff;"&gt;if</span>(1<span style="color: #000000;"&gt;){ </span><span style="color: #0000ff;"&gt;var</span> test = "test"<span style="color: #000000;"&gt; } console.log(test) } </span><span style="color: #0000ff;"&gt;function</span><span style="color: #000000;"&gt; bb() { </span><span style="color: #0000ff;"&gt;if</span>(1<span style="color: #000000;"&gt;){ let test </span>="test"<span style="color: #000000;"&gt;; } console.log(test) } </span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; 在for循环中 let</span> <span style="color: #0000ff;"&gt;var</span> arry =<span style="color: #000000;"&gt; []; </span><span style="color: #0000ff;"&gt;for</span>(<span style="color: #0000ff;"&gt;var</span> i = 0; i<10; i++<span style="color: #000000;"&gt;){ console.log(i) arry[i] </span>= <span style="color: #0000ff;"&gt;function</span><span style="color: #000000;"&gt; () { console.log(i) } } </span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; 相当于</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; var arry = [];</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; var i;</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; for(i = 0; i<10; i++){</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; console.log(i)</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; arry[i] = function () {</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; console.log(i)</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; }</span> <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; }</span> arry[5<span style="color: #000000;"&gt;]() const name </span>= "gaoxin"<span style="color: #000000;"&gt;; const name </span>= "随意" <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; 报错</span></pre>

2? 模板字符串

ES6引入了反引号``

3? 函数

箭头函数,是函数的快捷写法,类比Python的匿名函数 lambda。

最直观的三个特点

  -- 不需要function关键字来创建函数

  -- 省略return关键字

  -- 继承当前上下文的this关键字(因为箭头函数的调用者是当前上下文,跟普通函数区别开)

x => x+1 x+1
<span style="color: #0000ff;">function<span style="color: #000000;"> test() {
console.log(
<span style="color: #0000ff;">this
<span style="color: #000000;">)
};

let obj =<span style="color: #000000;"> {
a: 1<span style="color: #000000;">,test: test,};

let obj2 =<span style="color: #000000;"> {
b: 3<span style="color: #000000;">,obj: obj,};

obj.test();
test();
obj2.obj.test();

4? import 和 export

import 导入模块、export导出模块

export name = "gaoxin" age = "18" 1 <span style="color: #008000;">//<span style="color: #008000;"> test.js
import {name,aa} from "./main"<span style="color: #000000;">
console.log(name)
console.log(age)
console.log(aa())
<span style="color: #008000;">//
<span style="color: #008000;"> 整个模块导入 把模块当做一个对象
<span style="color: #008000;">
//
<span style="color: #008000;"> 该模块下所有的导出都会作为对象的属性存在

import * as obj from "./main"<span style="color: #000000;">
console.log(obj.name)
console.log(obj.age)
console.log(obj.aa())

app = });
export
<span style="color: #0000ff;">default
<span style="color: #000000;"> app
<span style="color: #008000;">//
<span style="color: #008000;"> test.js
<span style="color: #008000;">
//
<span style="color: #008000;"> import app from "./main"

import my_app from "./main"

5? 数据解构

?数据的解构类似于我们python里面的**解包

const people ="提莫"2= ["瑞文","刀妹"const { name,age } =<span style="color: #000000;"> people
console.log(name)
console.log(age)
const [name1,name2]
=<span style="color: #000000;"> person
console.log(name1)
console.log(name2)

6? class extends super

ES6 引入了关键字class来定义一个类,constructor是构造方法,this代表实例对象。

类之间通过extends继承,继承父类的所有属性和方法。

super关键字,它代指父类的this对象,子类必须在constructor中调用super()方法,

否则新建实例时会报错,因为子类没有自己的this对象。调用super()得到this,才能进行修改。

.type = "animal".type + "says" +let animal = <span style="color: #0000ff;">new<span style="color: #000000;"> Animal()

animal.says("hello"<span style="color: #000000;">)

class Dog extends Animal{
constructor(){
super();
<span style="color: #0000ff;">this.type = "dog"<span style="color: #000000;">;
}
}

let dog = <span style="color: #0000ff;">new<span style="color: #000000;"> Dog()
dog.says("hello")

附 中文文档:?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读