これはJava1.7付属のRhinoでようやくletを使えるということなので、 varで宣言した変数のスコープに悩まされてきた身としては大変ありがたい。
特にfor文でループ変数のスコープを最小限にするために、 いちいち (function(){})() で囲ってやるのは手間だった。 Rhino1.7相当なら、最初から for (let i = 0; i < count; i++) と書くことができる。
1. 実行するスクリプト(let.js):
var stdout = java.lang.System.out;
{
let n = 2;
for (let i = 0; i < n; i++) {
stdout.print(" " + i);
}
stdout.println();
stdout.println("i is " + typeof i);
}
stdout.println("n is " + typeof n);
2. 実行する:
>jrunscript let.js
0 1
i is undefined
n is undefined
0 件のコメント:
コメントを投稿