ホームページ > 記事 > ウェブフロントエンド > es6 構文は標準ですか?
es6 構文は標準です。 ES6 の正式名は ECMAScript 6 で、これは JavaScript 言語用に正式にリリースされた標準です。この標準の目標は、JavaScript 言語を使用して複雑な大規模アプリケーションを記述し、エンタープライズ レベルの開発言語になることを可能にすることです。 ECMAScript と JavaScript の関係は、前者は後者の仕様、後者は前者の実装です。
このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。
ES6 の正式名は ECMAScript 6 で、これは JavaScript 言語用に正式にリリースされた標準です。この標準の目標は、JavaScript 言語を使用して複雑な大規模アプリケーションを作成し、エンタープライズレベルの開発言語。
ES6 は、ES5 の後にリリースされた JavaScript 言語の新世代標準であり、多くの新機能や構文が追加され、2015 年 6 月 17 日に正式版としてリリースされ、正式名称は ES2015 となりました。
ECMAScript と JavaScript の関係は、前者が後者の仕様であり、後者が前者の実装であるということです (他の ECMAScript 方言には JScript や ActionScript が含まれます)
2011 年、ECMAScript バージョン 5.1 のリリース後、バージョン 6.0 の開発が始まりました。したがって、ES6 という言葉の本来の意味は、JavaScript 言語の次のバージョンを指します。 ES6の最初のバージョンは2015年6月にリリースされ、正式名称は「ECMAScript 2015 Standard」(略称ES2015)です。 2016 年 6 月には予定通り、若干修正された「ECMAScript 2016 Standard」(以下、ES2016)がリリースされましたが、両者の違いは非常に小さく、基本的には同じであるため、このバージョンは ES6.1 バージョンとみなすことができます。標準。計画によれば、ES2017 規格は 2017 年 6 月にリリースされる予定です。
したがって、ES6 は歴史的な用語であると同時に一般的な用語でもあり、ES2015、ES2016、ES2017 などを含むバージョン 5.1 以降の JavaScript の次世代標準を意味しますが、ES2015 は正式名称であり、具体的には以下のことを指します。その年にリリースされた言語標準の正式バージョン。 ES6 について話すときは、一般に ES2015 標準を指しますが、一般的に「次世代 JavaScript 言語」を指すこともあります。
ブロック スコープは次の内部に存在します: function 、 block (例: " { " と " } " の間の領域)
1.let ステートメント
//通过var声明的变量 //函数内部 function changeState(flag) { if (flag) { var color = "red" } else { console.log(color); return null; } } changeState(false); //块中 { var a = 1; } console.log("a=" + a); //for循环中 for (var i = 0; i <p>#</p><pre class="brush:php;toolbar:false"> //通过let声明的变量 //函数内部 function changeState(flag) { if (flag) { let color = "red" } else { console.log(color); return null; } } changeState(false); //块中 { let a = 1; } console.log("a=" + a); //for循环中 for (let i = 0; i <img src="https://img.php.cn/upload/image/162/737/761/1666341173585140.png" title="1666341173585140.png" alt="es6 構文は標準ですか?"><p><img src="https://img.php.cn/upload/image/465/191/909/166634117986532es6%20%E6%A7%8B%E6%96%87%E3%81%AF%E6%A8%99%E6%BA%96%E3%81%A7%E3%81%99%E3%81%8B?" title="166634117986532es6 構文は標準ですか?" alt="es6 構文は標準ですか?"></p>同じスコープ内では let を使用して既存の識別子を繰り返し宣言することはできませんが、別のスコープ内であれば可能です。
// 在同一作用域下,不能使用let重复声明已经存在的标识符,但如果在不同的作用域下,则是可以的 var a=0; var b=0; { let a=0; } let b=0;
#let を使用して変数を宣言すると、変数の繰り返し宣言を防ぐことができます#
var a=0; var a=10;//ok var b=1 let b=100;
同じスコープで const を使用する既存の識別子を宣言すると構文エラーも発生します
オブジェクトの宣言には const を使用します。オブジェクト自体のバインディングは変更できませんが、オブジェクトのプロパティと値は変更できますconst person={ name:"zhangSan" }; person.name="lisi"; //ok person.age=19; //ok person={ name:"wangwu" };
グローバル スコープで var を使用して宣言された変数またはオブジェクトは、ウィンドウ オブジェクトの属性として使用されます。ブラウザ環境 (var を使用すると、既存のグローバル プロパティが誤って上書きされる可能性があります)
var greeting="welcome"; console.log(window.greeting); console.log(window.Screen); var Screen="liquid crystal"; console.log(window.Screen);
let greeting="welcome"; console.log(window.greeting); console.log(window.Screen); const Screen="liquid crystal"; console.log(window.Screen==Screen);
二、解构赋值 解构赋值是对赋值运算符的扩展。 他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。 在代码书写上简洁且易读,语义更加清晰明了; 也方便了复杂对象中数据字段获取。 三、模板字符串 模板字符串相当于加强版的字符串,用反引号 `,除了作为普通字符串,还可以用来定义多行字符串, 还可以在字符串中加入变量和表达式。 四、声明对象简写 五、定义方法简写 六、对象拓展运算符 符号 (...) 【相关推荐:javascript视频教程、编程视频】
//1、数组解构
// 传统
let a = 1, b = 2, c = 3
console.log(a, b, c)
// ES6
let [x, y, z] = [1, 2, 3]
console.log(x, y, z)
/*********************************************************************************************************/
/*********************************************************************************************************/
//2、对象解构
let user = {name: 'Johon', age: 18}
// 传统
let name1 = user.name
let age1 = user.age
console.log(name1, age1)
// ES6
let { name, age } = user//注意:解构的变量必须和user中的属性同名
console.log(name, age)
// 字符串插入变量和表达式。变量名写在 ${} 中,${} 中可以放入 JavaScript 表达式。
let name = 'Kuangshen'
let age = 27
let info = `My Name is ${name},I am ${age+1} years old next year.`
console.log(info)
// My Name is Kuangshen,I am 28 years old next year.
const age = 12
const name = '小王'
// 传统
const person1 = {age: age, name: name}
console.log(person1)
// ES6
const person2 = {age, name}
console.log(person2) //{age: 12, name: '小王'}
// 传统
const person1 = {
sayHi:function(){
console.log('Hi')
}
}
person1.sayHi();//'Hi'
// ES6
const person2 = {
sayHi(){
console.log('Hi')
}
}
person2.sayHi() //'Hi'
let person = {nameL:"oAk",age:23}
let someone1 = persion // 引用赋值
let someone2 = { ...person } // 对象拷贝
someone1.name = 'oAk_OLD'
someone2.name = 'oAk_NEW'
console.log(persion) // {name:'oAk_OLD', age:23}
console.log(someone1) // {name:'oAk_OLD', age:23}
console.log(someone2) // {name:'oAk_NEW', age:23}
以上がes6 構文は標準ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。