私は Javascript プロジェクトを任されている C++/Java 開発者ですが、この問題を理解できないようです。
ここで説明されているように、直接割り当てによって名前空間を定義するjavascriptファイルを使用しています
だからここに、過度に単純化された名前空間の例での私の試みがあります
// testns.js
var ns = { }
ns.val = -1;
ns.setVal = function(newVal) {
this.val = newVal;
}
そして、これが私がやりたいことです
//myScript.js
function testNamespaceInstances()
{
var nsInstance1 = ns;
nsInstance1.setVal(1);
var nsInstance2 = ns;
nsInstance2.setVal(2);
console.log("nsInstance1.val: " + nsInstance1.val);
console.log("nsInstance2.val: " + nsInstance2.val);
}
その関数は出力します
nsInstance1.val: 2
nsInstance2.val: 2
関数が出力されるように、名前空間が宣言されているtestns.jsファイルを変更せずにできることはありますか
nsInstance1.val: 1
nsInstance2.val: 2
編集:サンプルコードにいくつかの詳細を追加しました。また、私が使用しているより複雑な JavaScript ファイルを単純化しようとしていることにも注意してください。