十分な言葉で、letの各使用方法を見てみましょう。
Letサポートを有効にする
すぐにLetを使用することはできませんが、心配しないでください。type=“ application / javascript; version = 1.7”を指定するか、バージョン(170)を呼び出すと、Letが動作します。
1ブロックの範囲
letを使用すると、特定のコードブロックでのみ表示される変数を定義できます。
この定義の構文は次のようになります
let(変数の定義){
何らかの表現
}
そして、それをより明確にするために、簡単な例を見てみましょう。 ボブがロシアに住み、DreamPlugを購入したいと考えています。CISでこれは300ドルかかることを知っています。ヨーロッパに行って安く購入し、購入してロシアに戻り、コンセントからコンピューターを持っていることを友人に自慢します。彼が答える価格は300ドルです。
この例を見る
//Bob dreamplug = new Object(); dreamplug.price = 300; let(dreamplug.price = 150){ //Bob Bob.buy(dreamplug); // Bob dream plug 150$ } //Bob Bob.onmessage = function(event){ if(event.data == " ?")Bob.postmessage(price + "$",event.origin) // Bob- } // Bob buy // , JavaScript
単一の式のスコープ
ブロックの場合とほぼ同じですが、1つの式(考えていた人)に適用されます。 したがって、中括弧を入れないでください。
明確にするために、ボブの例を考えてみましょう。 それで、ボブは子供の頃に落ち、取締役会での分裂の兆候によって彼がどのように反応したかを思い出しました。 彼は、2での可分性に基づいて回答しましたが、3での可分性に基づいて回答する必要がある1つの例を除きます。
この例を見る
// pred = function(x)!(x%2) // pred(3) // Bob-a pred(2) let(pred = function(x)!(x%3))pred(4) //
一部のHabrovsk居住者(つまり、関数型言語コードが何であるかを知らない人)は、ここでは変数ではなく関数を定義することに気づきましたが、JSは関数型言語コードであり、関数は本格的な型であることを忘れないでください。
forループの中にしましょう
ループのletで変数を定義することもできます。varの定義との唯一の違いは、変数がループのスコープ内になく、それ以外に何もないことです。
ボブに買い物に行かせてください。
この例を見る
list = ["msp430","avr","pic","msp430 Launch pad"] //Bob var i = 100; // Bob- for(let i=0;i<list.length;i++){ Bob.buy(list[i]); //Bob } Bob.say(' ' + i) //100!!!
ブロックの中にしましょう
特定のブロック内で変数をletで定義できます。 コードブロックのletの定義との違いは、ここでは変数の定義を開始すると、変数が未定義になり、値を割り当てた場合にのみ未定義にならないことです。 つまり、たとえば。 彼らがボブに彼の好きな数の二乗を尋ねた場合、あなたはそれをすることはできません。
この例を見る
let i=100 { let i = i * i Bob.say(i) //NaN let i - i i undefined undedined undedined NaN }
それにもかかわらず、あなたはこれを行うことができます:
この例を見る
let i=100 { let m = i * i Bob.say(m) }
記事と妥当性についてのコメントを聞いてうれしいです。