假设我有一个像这样的JSON对象:
var myObj = {
'question1': {
'option1': 'foo',
'option2': 'bar',
'option3': 'baz'
},
'question2': {
...
},
'question3': {
...
}
};
Run Code Online (Sandbox Code Playgroud)
由于它的子节点中的键总是有一个数字,我想做一个循环并将循环的索引连接到对象键,并用点表示法获取值...
所以,我想要得到这些值,我需要做一些像这样的事情:
myObj.'question'+i
Run Code Online (Sandbox Code Playgroud)
我怎么能连接正确?
我想在JavaScript中使用所谓的"枚举"对象作为字典键(实际上,它也是字典AFAIK).
这不起作用:
var State ={DEFAULT:0,ACTIVE:1 ,INACTIVE:2,ALERT:3};
var statesDict = {
State.ACTIVE : {color:0x00ff00}
State.INACTIVE: {color:0x000000}
};
Run Code Online (Sandbox Code Playgroud)
虽然这个做了:
var State ={DEFAULT:0,ACTIVE:1 ,INACTIVE:2,ALERT:3};
var statesDict = {
1: {color:0x00ff00}
2: {color:0x000000}
};
Run Code Online (Sandbox Code Playgroud)
为什么?是不State.{prop name}应该被它的价值取代?
如何使用变量作为我要搜索的键来查询 mongodb?
数据:
const schedule = {
day0: [10, 1440],
day1: [10, 1440],
day3: [10, 1440],
day6: [10, 1440],
}
Run Code Online (Sandbox Code Playgroud)
查询
User.find({ `schedule.${varHere}` { $exists: true}}, (err, users) => {
console.log(users)
})
Run Code Online (Sandbox Code Playgroud) 我一直在研究类似jQuery的JavaScript库.我想添加的下一个.css()函数是一个函数.
像这样的东西:
function css(elem,name,value){
elem.style.name = value;
// >>>> ^ <<<<<<
// needed variable variable
}
Run Code Online (Sandbox Code Playgroud)
谁知道我应该怎么做?我不知所措,过去一小时我一直是Goggling的建议,我还没有找到解决方案.
有任何想法吗?
谢谢.
这似乎是一件基本的事情,但我无法找到我哪里出错了。
我想以这种键值格式输出。
[{"10":"bob"},{"20":"Tom"},{"30":"Larry"}]
Run Code Online (Sandbox Code Playgroud)
我在做什么 -
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
list.push({ages[i] : names[i]})
}
Run Code Online (Sandbox Code Playgroud)
但是我收到了意外的令牌错误。请指导我哪里出错了?
我有这样的数组["aaa","aaa","bbb","ccc"].
我需要的是将它转换为这样的形式:
{ "aaa" :
{ "aaa" :
{ "bbb" :
{ "ccc" : 1 }
}
}
}
Run Code Online (Sandbox Code Playgroud)
我知道eval可以做到这一点,但有没有更漂亮的解决方案?
感谢您阅读我的帖子.
在JavaScript中我试图通过函数更新对象值,通过该函数我将对象属性传递给更新.
但是,这不起作用 - 我可以看到原因,但不知道如何对抗它!
myObject = {"testItem": "testValue"};
console.log(myObject.testItem);
function updateSomeValue(objectItem, newValue){
myObject.objectItem = newValue;
}
updateSomeValue('testItem', 'newValue');
console.log(myObject.testItem);
Run Code Online (Sandbox Code Playgroud)
现在,我可以看到这里的问题是,在函数中,myObject.objectItem期望一个名为objectItem的对象中的项 - 它不会将它转换为testItem.
我该怎么做呢?
document.body.style.backgroundColor="#F00";
Run Code Online (Sandbox Code Playgroud)
此语句将主体背景颜色设置为红色.
在我的原始代码中,我有一个函数,它通过标记名称将元素分配给全局变量element.我在调用此函数后发现我可以这样做:element.style.backgroundColor="#F00";
但是,似乎没有任何方法可以替代声明的属性部分.下面我已经提出了最明显的方法,尽管我也尝试将参数分配给变量和各种报价组合.
function assignStyle(value) {
document.body.style.backgroundColor = value;
}
function attemptStyle(property,value) {
document.body.style.property = value;
}Run Code Online (Sandbox Code Playgroud)
button { font-family: monospace; }Run Code Online (Sandbox Code Playgroud)
<button onmouseover="assignStyle('#131519');" onmouseout="assignStyle('#FFF');">
function assignStyle(value){}
</button><br />
<button onmouseover="attemptStyle('backgroundColor','#137619');" onmouseout="attemptStyle('backgroundColor','#FFF');">
function attemptStyle(property,value){}
</button>Run Code Online (Sandbox Code Playgroud)
编辑:这个问题不是重复如何使用变量作为名称向JavaScript对象添加属性?.这个问题包含jQuery,包括我自己在内的很多人都知道.我的问题是基本的JavaScript.另外,我想知道如何向元素添加属性,因此通过将参数传递给函数参数.就我而言,变量进一步使问题复杂化.
例如,我要求用户输入一个输入,然后输入"key",我将值保存在一个名为INPUT的变量上.然后我想用这样创建一个对象.
var obj = {INPUT:"其他一些输入"}; 其中INPUT =键
我知道我可以添加更多值,但我需要提前知道密钥才能添加它.我可以在不知道它的情况下添加新密钥吗?
var data= [{_id: "5a93cbd49ae761a4015f6346", nombre: "Chicago - Missouri", longitud: "-94.6807924", latitud: "38.287606"},
{ _id: "5a93ca539ae761a4015f6344", nombre: "Boston - Central Falss", longitud: "-71.4111895", latitud: "41.8902971"},
{ _id: "5a93ccbf9ae761a4015f6349", nombre: "Houston - Dallas", longitud: "-97.0117365", latitud: "32.8209296"}]
var d=[];
for(var i in data){
d.push({ data[i].nombre:data[i]["_id"] })
}
Run Code Online (Sandbox Code Playgroud)
我想要一个带结构的json
{ "nombre":"_id" }
Run Code Online (Sandbox Code Playgroud)
例如:
{ "Chicago - Missouri":"5a93cbd49ae761a4015f6346"}
{ "Boston - Central Falss- Missouri": "5a93ca539ae761a4015f6344" }4
Run Code Online (Sandbox Code Playgroud)
我的错是什么?
谢谢
在下面的示例中,对象似乎不知道哪个类别是变量,因此它用作字符串:
var categoria = "Carros";
var obj = {
categorias: {}
};
obj.categorias = {...obj.categorias, categoria: {}}
console.log(obj.categorias)Run Code Online (Sandbox Code Playgroud)
我希望类别属性被命名为“汽车”而不是类别。我尝试了下面的方法,但它返回模板字符串错误:
var categoria = "Carros";
var obj = {
categorias: {}
};
obj.categorias = {...obj.categorias, `${categoria}`: {}}Run Code Online (Sandbox Code Playgroud)