13

NodeJSで動的変数名を作成するにはどうすればよいですか? いくつかの例では、変数に格納すると言っていwindowますが、それはクライアント側の Javascript であると想定していました。私が間違っている場合は修正してください。

4

4 に答える 4

24

通常、次のようなことを行います。

var myVariables = {};
var variableName = 'foo';

myVariables[variableName] = 42;
myVariables.foo // = 42
于 2012-09-26T01:08:54.990 に答える
9

node.js には、クライアント側 js のコンテキストにglobal相当するコンテキストがあります。windowプレーンな Javascript の場合と同様に、クロージャー/関数/モジュールの外部で変数を宣言すると、変数はグローバル コンテキスト、つまり のプロパティとして存在しますglobal

私はあなたの質問から、あなたが次のようなものを望んでいることを理解しています:

var something = 42;
var varname = "something";
console.log(window[varname]);

これは node.js では次のようになります。

var something = 42;
var varname = "something";
console.log(global[varname]);
于 2012-09-26T01:07:08.783 に答える
1

悪い答えがこれほど多くの票を獲得する理由がわからないだけです。それは非常に簡単な答えですが、あなたはそれを複雑にします。

var type = 'article';
this[type+'_count'] = 1000;  // in a function we use "this";
alert(article_count);
于 2020-05-18T05:45:38.417 に答える