はい。角かっこ表記の使用(これはMDNのチュートリアルです)
これが実用的なフィドルです
名前がに格納されている値であるcontainingObject[stringVariable]
プロパティにアクセスしているようなことをするとき。containingObject
stringVariable
// this assumes browser JavaScript where window is the global namespace
// in node.js this would be a little different
var i=0;
while(i<10){
window["counters"+i] = "This is loop has ran " + i + "times.";
i++;
}
console.log(counters3);
this
ウィンドウの代わりに使用したい場合は、厳密モードでは失敗する可能性があります。
上記のMDNリンクからブラケット表記がどのように機能するかについての主な説明は次のとおりです。
JavaScriptオブジェクトのプロパティには、角かっこ表記を使用してアクセスまたは設定することもできます。各プロパティは、それにアクセスするために使用できる文字列値に関連付けられているため、オブジェクトは連想配列と呼ばれることもあります。したがって、たとえば、次のようにmyCarオブジェクトのプロパティにアクセスできます。
myCar["make"] = "Ford";
myCar["model"] = "Mustang";
myCar["year"] = 1969;
変数に格納されている文字列値を使用して、プロパティにアクセスすることもできます。
var propertyName = "make";
myCar[propertyName] = "Ford";
propertyName = "model";
myCar[propertyName] = "Mustang";