ホームページ >ウェブフロントエンド >jsチュートリアル >ES6の詳細な構文
js には常に var というバグがあります:
1 var で宣言された変数は変数昇格を持ちます
console.log(name); //jhonvar name = 'jhon';
2、var にはブロックレベルのスコープがありません
var name2 = 'jjjon'; { var name2 = 'tom'; } console.log(name2); //tom
3. var は変数を複数回繰り返し定義でき、後続の変数は前の変数を置き換えます
var name3 = 'jond';var age = 18;var name3 = 19;var name3 = 'rose'; console.log(name3); //rose
定義された変数 let:
1. let で宣言された変数は、ブロックレベルのスコープ
で定義された後にのみ使用できます。
console.log(name4); //报错let name4 = '1112';3。変数を複数回定義できません。もう変更できません
let name5 = '222'; { let name5 = ' ttt'; } console.log(name5); //222
2. 定数はブロックレベルのスコープを持っています
let name6 = 'aa'; let name6 = 'bb'; //报错console.log(name6); //aa
3.ええ
4. 同じ名前の定数は宣言できません5、初期値を割り当てる必要があります。そうでない場合は、エラーが報告されます
const pi = 3.01415;//pi = 3; //报错 { const arr = [5,6,8,9,]; arr.push(7); console.log(arr); //(5) [5, 6, 8, 9, 7] arr = 10; //值不能改变,否则报错 }
6。変更することはできませんが、内部プロパティは変更できます
{ const ban = "vin"; } console.log(ban); //报错
例: アプリケーションシナリオ、固定アドレスは定数を使用できます
console.log(ba); //报错const ba = 'liu';
3、文字列拡張
1. 文字列 "hello word" が "word" に存在するかどうかを判断します
const bb; //报错
2. ES6 は include() を提供します: 文字列に特定の文字が含まれているかどうかを判断するために使用されるブール値を返します
const obj = {
na:"jjjj",
age:20};
console.log(obj.na); //jjjjobj.na = "ccs";
console.log(obj.na); //ccs
// var path = 1122// var path = '1243';const path = 'path'; console.log(path); //path
4, endsWith(str[,num]): 文字列が終了するかどうかを決定するために使用されるブール値を返します。特定の文字を含む
var str = 'hello word';var result = str.indexOf('word'); console.log(result); //65、repeat(num): 数値を渡すと、このメソッドは文字列を回数に応じた回数繰り返します
var bool = str.includes('word'); console.log(bool); //true
Four、5.0 テンプレート構文: `テンプレート文字列`
bool2 = str.startsWith('hello'
Five、6.0 アロー関数: ()= >{}
var bool4 = str.endsWith('d'); console.log(bool4); //true//给这个方法传入两个参数var bool5 = str.endsWith('o',7); console.log(bool5); //false
以上がES6の詳細な構文の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。