在Javascript中,如何将字符串转换为属性名?
我有一个具有各种属性的全局对象,其值是字符串。当用户在HTML输入中键入字符串时,我使用javascript将该字符串分配给变量。我需要将该字符串转换为属性名称,并返回与该属性关联的字符串 例如:在Javascript中,如何将字符串转换为属性名?,javascript,string,object,properties,Javascript,String,Object,Properties,我有一个具有各种属性的全局对象,其值是字符串。当用户在HTML输入中键入字符串时,我使用javascript将该字符串分配给变量。我需要将该字符串转换为属性名称,并返回与该属性关联的字符串 例如: myglobalobject = { propertyname : "String value to be returned." } function GetInput(){ mystring = document.getElementById('input').value;
myglobalobject = {
propertyname : "String value to be returned."
}
function GetInput(){
mystring = document.getElementById('input').value;
myproperty = convertstringToProperty(str); //This is where I need a solution
return myglobalobject.myproperty;
}
嗯,你猜,属性可以通过一个字符串来访问:
const myObject={
房地产1:0,
物业2:1,
};
const inputFromUser='property1';
log(myObject[inputFromUser])代码>好吧,您可以用字符串访问属性:
const myObject={
房地产1:0,
物业2:1,
};
const inputFromUser='property1';
log(myObject[inputFromUser])代码>只需使用计算属性:
return myglobalobject[mystring];
这是对以下事实的概括,即使用点表示法访问属性与使用方括号和字符串文本访问相同:
obj.prop === obj["prop"];
因此,当您有非字符串文字的内容时,只需使用括号表示法。只需使用计算属性:
return myglobalobject[mystring];
这是对以下事实的概括,即使用点表示法访问属性与使用方括号和字符串文本访问相同:
obj.prop === obj["prop"];
因此,当您有非字符串文字的内容时,只需使用括号表示法。您甚至不需要函数:
var myglobalobject={
propertyname:“要返回的字符串值。”
}
函数GetInput(){
mystring='anotherKey';
返回myglobalobject[mystring]=未定义;
}
GetInput()
console.log(myglobalobject)
您甚至不需要函数:
var myglobalobject={
propertyname:“要返回的字符串值。”
}
函数GetInput(){
mystring='anotherKey';
返回myglobalobject[mystring]=未定义;
}
GetInput()
console.log(myglobalobject)
直接使用myglobalobject[mystring]
。您不需要转换任何内容。myGlobalObj[str]
Facepalm。如果是蛇,它会咬我。直接使用myglobalobject[mystring]
。您不需要转换任何内容。myGlobalObj[str]
Facepalm。如果是蛇,它会咬我的。