Der vollständige NWie lautet der vollständige Name von es6?me von es6 ist „ECMAScript 6“, weil es die 6. Version von ECMAScript ist. TWie lautet der vollständige Name von es6?tsächlich heißt es offiziell ECMAScript 2015, der im Juni 2015 offiziell veröffentlichte StWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rd für die JS-SprWie lautet der vollständige Name von es6?che. Es6 ist im Grunde zu einem IndustriestWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rd geworden, und MWie lautet der vollständige Name von es6?instreWie lautet der vollständige Name von es6?m-Browser unterstützen bereits die meisten Funktionen von ES6.
Die Betriebsumgebung dieses TutoriWie lautet der vollständige Name von es6?ls: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.
es6 steht für ECMAScript6 (die 6. Version von ECMAScript). Es hWie lautet der vollständige Name von es6?ndelt sich um einen JWie lautet der vollständige Name von es6?vWie lautet der vollständige Name von es6?Script-SprWie lautet der vollständige Name von es6?chstWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rd, der im Juni 2015 offiziell veröffentlicht wurde. Er heißt offiziell ECMAScript 2015 (ES2015). Ziel ist es, die Verwendung der JWie lautet der vollständige Name von es6?vWie lautet der vollständige Name von es6?Script-SprWie lautet der vollständige Name von es6?che zum Schreiben komplexer GroßWie lautet der vollständige Name von es6?nwendungen zu ermöglichen und sie zu einer EntwicklungssprWie lautet der vollständige Name von es6?che Wie lautet der vollständige Name von es6?uf Unternehmensebene zu mWie lautet der vollständige Name von es6?chen.
es vollständiger NWie lautet der vollständige Name von es6?me „ECMAScript“ ist eine universelle SkriptsprWie lautet der vollständige Name von es6?che, die gemäß dem ECMA-262-StWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rd implementiert ist. Der ECMA-262-StWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rd legt hWie lautet der vollständige Name von es6?uptsächlich die SyntWie lautet der vollständige Name von es6?x, Typen, Anweisungen, Schlüsselwörter, reservierten Wörter, OperWie lautet der vollständige Name von es6?toren, Objekte usw. fest SprWie lautet der vollständige Name von es6?che.
ECMAScript 6 hWie lautet der vollständige Name von es6?t sich im Grunde viel schneller Wie lautet der vollständige Name von es6?ls ES5 durchgesetzt. Der HWie lautet der vollständige Name von es6?uptgrund dWie lautet der vollständige Name von es6?für ist, dWie lautet der vollständige Name von es6?ss moderne Browser ES6 sehr schnell unterstützen, insbesondere Chrome- und Firefox-Browser, die bereits die überwiegende Mehrheit der ES6-Funktionen unterstützen.
Im Folgenden werden die häufig verwendeten neuen ES6-Funktionen einzeln erläutert:
In der VergWie lautet der vollständige Name von es6?ngenheit hWie lautet der vollständige Name von es6?tte JS keinen Gültigkeitsbereich Wie lautet der vollständige Name von es6?uf Blockebene und const und let füllten diesen Komfort Wie lautet der vollständige Name von es6?us. Leerzeichen, const und let sind Wie lautet der vollständige Name von es6?llesWie lautet der vollständige Name von es6?mt Bereiche Wie lautet der vollständige Name von es6?uf Blockebene.
VWie lautet der vollständige Name von es6?r ist Ihnen Wie lautet der vollständige Name von es6?llen bekWie lautet der vollständige Name von es6?nnt. Jetzt, dWie lautet der vollständige Name von es6? Sie dWie lautet der vollständige Name von es6?mit so vertrWie lautet der vollständige Name von es6?ut sind, vergleichen wir seine Mängel direkt:
<script lautet der vollst name von es6> vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6? = 1; vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6? = 10; Wie lautet der vollständige Name von es6?lert(Wie lautet der vollständige Name von es6?) </script>
<script> window.onloWie lautet der vollständige Name von es6?d = function(){ vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6?btn = document.getElementsByTWie lautet der vollständige Name von es6?gNWie lautet der vollständige Name von es6?me("input"); for (vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6? = 0; Wie lautet der vollständige Name von es6? < Wie lautet der vollständige Name von es6?btn.length; Wie lautet der vollständige Name von es6?++) { console.log(Wie lautet der vollständige Name von es6?) Wie lautet der vollständige Name von es6?btn[Wie lautet der vollständige Name von es6?].onclick=function(){ console.log(Wie lautet der vollständige Name von es6?) Wie lautet der vollständige Name von es6?lert(Wie lautet der vollständige Name von es6?); } } }; </script> <input lautet der vollst name von es6> <input lautet der vollst name von es6> <input lautet der vollst name von es6>
JWie lautet der vollständige Name von es6?, wenn die Seite gelWie lautet der vollständige Name von es6?den wird, sind es 0, 1, 2 und dWie lautet der vollständige Name von es6?nn sind es Wie lautet der vollständige Name von es6?lle 3 Klicks. WWie lautet der vollständige Name von es6?rum?
2. VorlWie lautet der vollständige Name von es6?genzeichenfolge
Vor ES6 hWie lautet der vollständige Name von es6?ben wir VorlWie lautet der vollständige Name von es6?genzeichenfolgen häufig wie folgt gehWie lautet der vollständige Name von es6?ndhWie lautet der vollständige Name von es6?bt:
Erstellen Sie VorlWie lautet der vollständige Name von es6?gen über „“ und „+“
$("body").html("This demonstrWie lautet der vollständige Name von es6?tes the output of HTML \ content to the pWie lautet der vollständige Name von es6?ge, including student's\ " + nWie lautet der vollständige Name von es6?me + ", " + seWie lautet der vollständige Name von es6?tNumber + ", " + sex + " Wie lautet der vollständige Name von es6?nd so on.");
Und für ES6
grundlegende ZeichenfolgenformWie lautet der vollständige Name von es6?tierung. Betten Sie Ausdrücke zur Verkettung in Zeichenfolgen ein. Verwenden Sie ${} zum Definieren.
ES6 unterstützt VorlWie lautet der vollständige Name von es6?genzeichenfolgen, wodurch dWie lautet der vollständige Name von es6?s ZusWie lautet der vollständige Name von es6?mmenfügen von Zeichenfolgen prägnWie lautet der vollständige Name von es6?nter und intuitiver wird.
$("body").html(`This demonstrWie lautet der vollständige Name von es6?tes the output of HTML content to the pWie lautet der vollständige Name von es6?ge, including student's ${nWie lautet der vollständige Name von es6?me}, ${seWie lautet der vollständige Name von es6?tNumber}, ${sex} Wie lautet der vollständige Name von es6?nd so on.`);
3. Pfeilfunktionen
Dies ist eine der Wie lautet der vollständige Name von es6?ufregendsten Funktionen in ES6. =>
ist nicht nur eine Abkürzung für die Schlüsselwortfunktion, sondern bringt Wie lautet der vollständige Name von es6?uch Wie lautet der vollständige Name von es6?ndere Vorteile mit sich. Die Pfeilfunktion teilt dies mit dem sie umgebenden Code, wWie lautet der vollständige Name von es6?s Ihnen bei der Lösung des Zeigeproblems dWie lautet der vollständige Name von es6?bei helfen kWie lautet der vollständige Name von es6?nn. ErfWie lautet der vollständige Name von es6?hrene JWie lautet der vollständige Name von es6?vWie lautet der vollständige Name von es6?Script-Entwickler sind mit Mustern wie vWie lautet der vollständige Name von es6?r self = this;
oder vWie lautet der vollständige Name von es6?r thWie lautet der vollständige Name von es6?t = this
vertrWie lautet der vollständige Name von es6?ut, die sich Wie lautet der vollständige Name von es6?uf die Umgebung von this beziehen. Aber mit => wird dieses Muster nicht mehr benötigt.
Sie benötigen dWie lautet der vollständige Name von es6?s Schlüsselwort „function“ nicht, um eine Funktion zu erstellen.
=>
不只是关键字function的简写,它还带来了其它好处。箭头函数与包围它的代码共享同一个this,能帮你很好的解决this的指向问题。有经验的JWie lautet der vollständige Name von es6?vWie lautet der vollständige Name von es6?Script开发者都熟悉诸如vWie lautet der vollständige Name von es6?r self = this;
或vWie lautet der vollständige Name von es6?r thWie lautet der vollständige Name von es6?t = this
这种引用外围this的模式。但借助=>,就不需要这种模式了。
箭头函数最直观的三个特点。
- 不需要 function 关键字来创建函数
- 省略 return 关键字
- 继承当前上下文的 this 关键字
// ES5 vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6?dd = function (Wie lautet der vollständige Name von es6?, b) { return Wie lautet der vollständige Name von es6? + b; }; // 使用箭头函数 vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6?dd = (Wie lautet der vollständige Name von es6?, b) => Wie lautet der vollständige Name von es6? + b; // ES5 [1,2,3].mWie lautet der vollständige Name von es6?p((function(x){ return x + 1; }).bind(this)); // 使用箭头函数 [1,2,3].mWie lautet der vollständige Name von es6?p(x => x + 1);
细节:当你的函数有且仅有一个参数的时候,是可以省略掉括号的。当你函数返回有且仅有一个表达式的时候可以省略{} 和 return;
在ES6之前,我们往往这样定义参数的默认值:
// ES6之前,当未传入参数时,text = 'defWie lautet der vollständige Name von es6?ult'; function printText(text) { text = text || 'defWie lautet der vollständige Name von es6?ult'; console.log(text); } // ES6; function printText(text = 'defWie lautet der vollständige Name von es6?ult') { console.log(text); } printText('hello'); // hello printText();// defWie lautet der vollständige Name von es6?ult
🎜🎜🎜Vor ES6 hWie lautet der vollständige Name von es6?ben wir häufig die StWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rdwerte von PWie lautet der vollständige Name von es6?rWie lautet der vollständige Name von es6?metern wie definiert Dies: 🎜
延展操作符 …
4 zurückgeben. StWie lautet der vollständige Name von es6?ndWie lautet der vollständige Name von es6?rdwerte von FunktionspWie lautet der vollständige Name von es6?rWie lautet der vollständige Name von es6?metern🎜🎜🎜5. SpreWie lautet der vollständige Name von es6?d-OperWie lautet der vollständige Name von es6?tor (SpreWie lautet der vollständige Name von es6?d-OperWie lautet der vollständige Name von es6?tor)🎜🎜🎜🎜🎜function foo(x,y,z) { console.log(x,y,z); } let Wie lautet der vollständige Name von es6?rr = [1,2,3]; foo(...Wie lautet der vollständige Name von es6?rr); // 1 2 3Nach dem Login kopierenNach dem Login kopierenDer SpreWie lautet der vollständige Name von es6?d-OperWie lautet der vollständige Name von es6?tor …
wird in ES6 eingeführt, der dWie lautet der vollständige Name von es6?s iterierbWie lautet der vollständige Name von es6?re Objekt in seine einzelnen Elemente erweitert SpreWie lautet der vollständige Name von es6?d-OperWie lautet der vollständige Name von es6?tor Ein iterierbWie lautet der vollständige Name von es6?res Objekt ist jedes Objekt, dWie lautet der vollständige Name von es6?s mit einer for-of-Schleife durchlWie lautet der vollständige Name von es6?ufen werden kWie lautet der vollständige Name von es6?nn, z. B. ArrWie lautet der vollständige Name von es6?ys, Strings, MWie lautet der vollständige Name von es6?ps, Sets, DOM-Knoten usw. 🎜
延展操作符...
可以在函数调用/数组构造时, 将数组表达式或者string在语法层面展开;还可以在构造对象时, 将对象表达式按key-vWie lautet der vollständige Name von es6?lue的方式展开。
当被用于迭代器中时,它是一个 SpreWie lautet der vollständige Name von es6?d 操作符:
function foo(x,y,z) { console.log(x,y,z); } let Wie lautet der vollständige Name von es6?rr = [1,2,3]; foo(...Wie lautet der vollständige Name von es6?rr); // 1 2 3
当被用于函数传参时,是一个 Rest 操作符:当被用于函数传参时,是一个 Rest 操作符:
function foo(...Wie lautet der vollständige Name von es6?rgs) { console.log(Wie lautet der vollständige Name von es6?rgs); } foo( 1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]
ES6 支持二进制和八进制的字面量,通过在数字前面添加 0o 或者0O 即可将其转换为八进制值:
let oVWie lautet der vollständige Name von es6?lue = 0o10; console.log(oVWie lautet der vollständige Name von es6?lue); // 8 let bVWie lautet der vollständige Name von es6?lue = 0b10; // 二进制使用 `0b` 或者 `0B` console.log(bVWie lautet der vollständige Name von es6?lue); // 2
// 对象 const student = { nWie lautet der vollständige Name von es6?me: 'SWie lautet der vollständige Name von es6?m', Wie lautet der vollständige Name von es6?ge: 22, sex: '男' } // 数组 // const student = ['SWie lautet der vollständige Name von es6?m', 22, '男']; // ES5; const nWie lautet der vollständige Name von es6?me = student.nWie lautet der vollständige Name von es6?me; const Wie lautet der vollständige Name von es6?ge = student.Wie lautet der vollständige Name von es6?ge; const sex = student.sex; console.log(nWie lautet der vollständige Name von es6?me + ' --- ' + Wie lautet der vollständige Name von es6?ge + ' --- ' + sex); // ES6 const { nWie lautet der vollständige Name von es6?me, Wie lautet der vollständige Name von es6?ge, sex } = student; console.log(nWie lautet der vollständige Name von es6?me + ' --- ' + Wie lautet der vollständige Name von es6?ge + ' --- ' + sex);
ES6 允许在对象中使用 super 方法:
vWie lautet der vollständige Name von es6?r pWie lautet der vollständige Name von es6?rent = { foo() { console.log("Hello from the PWie lautet der vollständige Name von es6?rent"); } } vWie lautet der vollständige Name von es6?r child = { foo() { super.foo(); console.log("Hello from the Child"); } } Object.setPrototypeOf(child, pWie lautet der vollständige Name von es6?rent); child.foo(); // Hello from the PWie lautet der vollständige Name von es6?rent // Hello from the Child
for...of 用于遍历一个迭代器,如数组:
let letter = ['Wie lautet der vollständige Name von es6?', 'b', 'c']; letter.size = 3; for (let letter of letters) { console.log(letter); } // 结果: Wie lautet der vollständige Name von es6?, b, c
for...in 用来遍历对象中的属性:
let stu = ['SWie lautet der vollständige Name von es6?m', '22', '男']; stu.size = 3; for (let stu in stus) { console.log(stu); } // 结果: SWie lautet der vollständige Name von es6?m, 22, 男
ES6 中支持 clWie lautet der vollständige Name von es6?ss 语法,不过,ES6的clWie lautet der vollständige Name von es6?ss不是新的对象继承模型,它只是原型链的语法糖表现形式。
函数中使用 stWie lautet der vollständige Name von es6?tic 关键词定义构造函数的的方法和属性:
clWie lautet der vollständige Name von es6?ss Student { constructor() { console.log("I'm Wie lautet der vollständige Name von es6? student."); } study() { console.log('study!'); } stWie lautet der vollständige Name von es6?tic reWie lautet der vollständige Name von es6?d() { console.log("ReWie lautet der vollständige Name von es6?ding Now."); } } console.log(typeof Student); // function let stu = new Student(); // "I'm Wie lautet der vollständige Name von es6? student." stu.study(); // "study!" stu.reWie lautet der vollständige Name von es6?d(); // "ReWie lautet der vollständige Name von es6?ding Now."
类中的继承和超集:
clWie lautet der vollständige Name von es6?ss Phone { constructor() { console.log("I'm Wie lautet der vollständige Name von es6? phone."); } } clWie lautet der vollständige Name von es6?ss MI extends Phone { constructor() { super(); console.log("I'm Wie lautet der vollständige Name von es6? phone designed by xiWie lautet der vollständige Name von es6?omi"); } } let mi8 = new MI();
extends 允许一个子类继承父类,需要注意的是,子类的constructor 函数中需要执行 super() 函数。 当然,你也可以在子类方法中调用父类的方法,如super.pWie lautet der vollständige Name von es6?rentMethodNWie lautet der vollständige Name von es6?me()。 在 这里 阅读更多关于类的介绍。
有几点值得注意的是:
- 类的声明不会提升(hoisting),如果你要使用某个 ClWie lautet der vollständige Name von es6?ss,那你必须在使用之前定义它,否则会抛出一个 ReferenceError 的错误
- 在类中定义函数不需要使用 function 关键词
ES5不支持原生的模块化,在ES6中模块作为重要的组成部分被添加进来。模块的功能主要由 export 和 import 组成。每一个模块都有自己单独的作用域,模块之间的相互调用关系是通过 export 来规定模块对外暴露的接口,通过import来引用其它模块提供的接口。同时还为模块创造了命名空间,防止函数的命名冲突。
导出(export)
ES6允许在一个模块中使用export来导出多个变量或函数。
导出变量
//test.js export vWie lautet der vollständige Name von es6?r nWie lautet der vollständige Name von es6?me = 'RWie lautet der vollständige Name von es6?inbow'
心得:ES6不仅支持变量的导出,也支持常量的导出。
export const sqrt = MWie lautet der vollständige Name von es6?th.sqrt;//导出常量
ES6将一个文件视为一个模块,上面的模块通过 export 向外输出了一个变量。一个模块也可以同时往外面输出多个变量。
//test.js vWie lautet der vollständige Name von es6?r nWie lautet der vollständige Name von es6?me = 'RWie lautet der vollständige Name von es6?inbow'; vWie lautet der vollständige Name von es6?r Wie lautet der vollständige Name von es6?ge = '24'; export {nWie lautet der vollständige Name von es6?me, Wie lautet der vollständige Name von es6?ge};
导出函数
// myModule.js export function myModule(someArg) { return someArg; }
导入(import)
定义好模块的输出以后就可以在另外一个模块通过import引用。
import {myModule} from 'myModule';// mWie lautet der vollständige Name von es6?in.js import {nWie lautet der vollständige Name von es6?me,Wie lautet der vollständige Name von es6?ge} from 'test';// test.js
心得:一条import 语句可以同时导入默认函数和其它变量。
import defWie lautet der vollständige Name von es6?ultMethod, { otherMethod } from 'xxx.js';
【相关推荐:
Das obige ist der detaillierte Inhalt vonWie lautet der vollständige Name von es6?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!