Javascript-“;串联;在for循环中使用一个变量
我不太确定我在标题中使用的therm,但我们开始吧 所以我有这样的想法:Javascript-“;串联;在for循环中使用一个变量,javascript,variables,loops,for-loop,concatenation,Javascript,Variables,Loops,For Loop,Concatenation,我不太确定我在标题中使用的therm,但我们开始吧 所以我有这样的想法: for (var key in myObject) { var GivenName = theObject.PS_1.GivenName; var GivenName = theObject.PS_2.GivenName; var GivenName = theObject.PS_3.GivenName; var GivenName = theObject.PS_4.GivenName; // and so on...
for (var key in myObject) {
var GivenName = theObject.PS_1.GivenName;
var GivenName = theObject.PS_2.GivenName;
var GivenName = theObject.PS_3.GivenName;
var GivenName = theObject.PS_4.GivenName;
// and so on...
}
很明显,我不想写这样的东西,我需要使用var键,但我不知道该怎么做,我做了很多尝试,但每次都失败了,是的,我很糟糕,我应该感觉很糟糕
我试过这个:
var GivenName = 'theObject.'+key+'.FirstName';
var GivenName = theObject.key.FirstName;
var GivenName = theObject.[key].FirstName;
var GivenName = theObject.['key'].FirstName;
var GivenName = theObject.[+key+].FirstName;
顺便说一句,密钥变量包含PS_1、PS_2、PS_3
for (var key in myObject) {
var value = myObject[key];
}
如果您还没有机会阅读它,mozilla javascript文档绝对棒极了。 即使你对它的大部分都很熟悉,它仍然会提供很好的参考信息。从文档中: 对象属性名称可以是有效的JavaScript字符串或任何内容 可以转换为字符串的,包括空字符串。然而 不是有效JavaScript标识符的任何属性名称(对于 例如,具有空格或破折号或以 编号)只能使用方括号表示法访问。这 当属性名要动态更新时,表示法也非常有用 已确定(直到运行时才确定属性名称)。 举例如下:
如果您还没有机会阅读它,mozilla javascript文档绝对是棒极了。 即使你对它的大部分都很熟悉,它仍然会提供很好的参考信息。从文档中: 对象属性名称可以是有效的JavaScript字符串或任何内容 可以转换为字符串的,包括空字符串。然而 不是有效JavaScript标识符的任何属性名称(对于 例如,具有空格或破折号或以 编号)只能使用方括号表示法访问。这 当属性名要动态更新时,表示法也非常有用 已确定(直到运行时才确定属性名称)。 举例如下:
你想实现什么?你想实现什么?
var GivenName = theObject[key].FirstName;
var myObj = new Object(),
str = "myString",
rand = Math.random(),
obj = new Object();
myObj.type = "Dot syntax";
myObj["date created"] = "String with space";
myObj[str] = "String value";
myObj[rand] = "Random Number";
myObj[obj] = "Object";
myObj[""] = "Even an empty string";
console.log(myObj);