Layzie/JavaScript-Garden — Issue #2: 日本語訳で気が付いた点のまとめ#2
Author: shigeki
Created: 2011-11-25 01:50:22+00:00
State: open

社内の勉強会で再度日本語訳をレビューしました
。
まだコンストラクター節の前までのレビューですが、新たに修正した方がいいのではないかという訳が見つかりましたのでご報告いたします。

内容をご確認の上、ご対応の方お願いいたします。

*** プロトタイプ ***
new Bar()はFooのインスタンスを新しく作らないという事は非常に注目されるべき点ですが、それ自身のプロトタイプを再利用しています。
→new Bar()はFooのインスタンスを新しく作らないが、プロトタイプに割り当てられたFooインスタンスを再利用していることは注目されるべき点です。

この時プロトタイプに代入されている値は単に無視されるだけです。
→しかしながらプロトタイプにプリミティブを代入した場合は単に無視されるだけです。

割り当てられているオブジェクトは上記の例で示されている通りに動作し、動的にプロトタイプチェーンを作ります。
→オブジェクトの代入は上記の例で示されている通りに動作し、動的にプロトタイプチェーンを作ることができます。

*** hasOwnProperty ***
for inループは列挙される属性がfalseにセットされているプロパティを反復処理しません。
→for inループは enumerable 属性がfalseにセットされているプロパティを反復処理しません。

*** 関数 ***

名前付き関数宣言
→ 名前付き関数式

他に特殊なケースとして、命名関数があります。
→ 他に特殊なケースとして、名前付き関数があります。

これはJavaScriptでは名前解決による動作です。関数名はいつも関数自体のローカルスコープ内で有効になっています
→これはJavaScriptの名前解決の方法によるもので、関数名はいつも関数自身のローカルスコープ内で有効になっています。

*** クロージャと参照 ***
これはグローバル変数countの作成 -またはオーバーライド- の代わりになるでしょう。
→これは(Counter関数スコープ内のcount変数を変更する)代わりにグローバル変数countを作成、 -または上書き- することになるでしょう。

*** オブジェクトのarguments ***
argumentsが既にvarや正式なパラメーターにより 関数のスコープが定義されている場合は argumentsオブジェクトは作られません。
→argumentsが既にvarや正式なパラメーターにより 関数のスコープ内部で定義されている場合は argumentsオブジェクトは作られません。