将变量分配给字典 Javascript 的值
assign variable to value of Dictionary Javascript
我正在构建字典,但我希望某些值包含变量。有没有办法将变量传递给字典,以便我可以分配一个点符号变量?变量对象将始终具有相同的结构,并且字典将是静态的并且每个键值对的结构相同。本质上我想将字典中的值传递给另一个函数来处理数据。
main.js
import myDictionary from "myDictionary.js"
const variables ={
item:"Hello"
}
const data = myDictionary[key](variables)
console.log(data)
myDictionary.js
const myDictionary = {
key: variables.item
}
所以日志应该显示你好。我知道这会很简单,但似乎无法弄清楚。
一如既往,非常感谢任何帮助
你想做的事是不可能的。 myDictionary.js 文件不知道主文件中有什么。你唯一能做的就是:
myDictionary.js
const myDictionary = {
key: "item"
}
main.js
import myDictionary from "myDictionary.js";
const variables = {
item: "Hello"
};
const data = variables[myDictionary["key"]];
console.log(data);
此外,即使 JavaScript 不强制使用分号,它们也会让您免去一些破坏自动插入器的愚蠢规则的麻烦。
您应该修改字典,使其保留实际的回调函数。只有这样它才能接受参数。
const myDictionary = {
key: (variables) => variables.item
}
const variables = {
item: "Hello"
}
const key = "key";
const data = myDictionary[key](variables)
console.log(data)
我必须道歉,因为当我问这个问题时,我并不完全清楚我需要什么,但经过一些实验和查看我的边缘案例并查看 Krzysztof 的回答后,我有了一个想法并想出了类似的东西对此 -
const dict = {
key: (eventData) => {
return [
{
module: 'company',
entity: 'placement',
variables: {
placement_id: {
value: eventData.id,
},
},
},
{
module: 'company',
entity: 'placement',
variables: {
client_id: {
value: eventData.client.id,
},
},
},
];
},
}
然后我得到这样的数据 -
const data = dict?.[key](eventData)
console.log(data)
然后我可以根据需要导航或操作数据。
感谢所有花时间帮助我的人
我正在构建字典,但我希望某些值包含变量。有没有办法将变量传递给字典,以便我可以分配一个点符号变量?变量对象将始终具有相同的结构,并且字典将是静态的并且每个键值对的结构相同。本质上我想将字典中的值传递给另一个函数来处理数据。
main.js
import myDictionary from "myDictionary.js"
const variables ={
item:"Hello"
}
const data = myDictionary[key](variables)
console.log(data)
myDictionary.js
const myDictionary = {
key: variables.item
}
所以日志应该显示你好。我知道这会很简单,但似乎无法弄清楚。
一如既往,非常感谢任何帮助
你想做的事是不可能的。 myDictionary.js 文件不知道主文件中有什么。你唯一能做的就是:
myDictionary.js
const myDictionary = {
key: "item"
}
main.js
import myDictionary from "myDictionary.js";
const variables = {
item: "Hello"
};
const data = variables[myDictionary["key"]];
console.log(data);
此外,即使 JavaScript 不强制使用分号,它们也会让您免去一些破坏自动插入器的愚蠢规则的麻烦。
您应该修改字典,使其保留实际的回调函数。只有这样它才能接受参数。
const myDictionary = {
key: (variables) => variables.item
}
const variables = {
item: "Hello"
}
const key = "key";
const data = myDictionary[key](variables)
console.log(data)
我必须道歉,因为当我问这个问题时,我并不完全清楚我需要什么,但经过一些实验和查看我的边缘案例并查看 Krzysztof 的回答后,我有了一个想法并想出了类似的东西对此 -
const dict = {
key: (eventData) => {
return [
{
module: 'company',
entity: 'placement',
variables: {
placement_id: {
value: eventData.id,
},
},
},
{
module: 'company',
entity: 'placement',
variables: {
client_id: {
value: eventData.client.id,
},
},
},
];
},
}
然后我得到这样的数据 -
const data = dict?.[key](eventData)
console.log(data)
然后我可以根据需要导航或操作数据。
感谢所有花时间帮助我的人