Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否可以将数组中的字符串表达式定义为对象中的键?_Javascript_Node.js - Fatal编程技术网

Javascript 是否可以将数组中的字符串表达式定义为对象中的键?

Javascript 是否可以将数组中的字符串表达式定义为对象中的键?,javascript,node.js,Javascript,Node.js,有许多sms发送服务提供商,所有这些服务都有不同的参数名称。我不知道哪家公司正在使用哪家web服务提供商。如果我在soap请求期间向用户请求参数,是否可以将这些参数定义为对象键 例如: 第一个用户请求参数:[companyName,msgBody,recipients] 另一个用户请求参数:[id,msgText,number,channelCode] 如果我们已将此数组定义为将发送sms请求的函数参数 我想为Soap主体创建一个对象 第一个用户的结果:obj={companyName:'ASD

有许多sms发送服务提供商,所有这些服务都有不同的参数名称。我不知道哪家公司正在使用哪家web服务提供商。如果我在soap请求期间向用户请求参数,是否可以将这些参数定义为对象键

例如:

第一个用户请求参数:[companyName,msgBody,recipients]

另一个用户请求参数:[id,msgText,number,channelCode]

如果我们已将此数组定义为将发送sms请求的函数参数

我想为Soap主体创建一个对象

第一个用户的结果:obj={companyName:'ASDDASD',msgBody:'Hello',recipients:'0264344534'}

另一个用户的结果:obj={id:21,msgText:'hi,number:54564234,channelCode:1}


注:obj值​​随机写入的

使用括号引用属性名称:
obj['propname']

如果要在对象文字中使用变量作为键名,可以使用:
{[keyname]:'value'}

keys1=['companyName','msgBody','recipients']
vals1=[1,2,3]
键2=['id'、'msgText'、'numbers'、'channelCode']
常量obj1={},obj2={}
键1.forEach((键,i)=>obj1[key]=vals1[i])
keys2.forEach(key=>obj2[key]=key+'value')
log(JSON.stringify(obj1)、JSON.stringify(obj2))
log(JSON.stringify(
{
[keys1[0]]:“值”
}

))
使用括号引用属性名称:
obj['propname']

如果要在对象文字中使用变量作为键名,可以使用:
{[keyname]:'value'}

keys1=['companyName','msgBody','recipients']
vals1=[1,2,3]
键2=['id'、'msgText'、'numbers'、'channelCode']
常量obj1={},obj2={}
键1.forEach((键,i)=>obj1[key]=vals1[i])
keys2.forEach(key=>obj2[key]=key+'value')
log(JSON.stringify(obj1)、JSON.stringify(obj2))
log(JSON.stringify(
{
[keys1[0]]:“值”
}

))
您需要这样的函数吗? 假设参数是字符串(['a','b'],而不是[a,b]),并且对象是javascript对象的数组

/*函数项目对象
@params:字符串参数的数组
@对象:以这些参数作为属性的对象数组
将对象投影到参数列表上,并返回一个对象数组,其中包含所有且仅包含参数作为属性*/
函数项目对象(参数、对象){
设项目一=功能(o){
让结果={};
帕拉姆斯·弗雷奇(
(p) =>{
//检查o[p]未定义时的行为
结果[p]=o[p];
}
)
返回结果;
}
结果=objects.map(projectOne);
返回结果;
}

log(projectObjects(['roses'],[{'roses':1,'violets':2},{'roses':3,'begonias':22},{'daisies':0}])您需要这样的函数吗? 假设参数是字符串(['a','b'],而不是[a,b]),并且对象是javascript对象的数组

/*函数项目对象
@params:字符串参数的数组
@对象:以这些参数作为属性的对象数组
将对象投影到参数列表上,并返回一个对象数组,其中包含所有且仅包含参数作为属性*/
函数项目对象(参数、对象){
设项目一=功能(o){
让结果={};
帕拉姆斯·弗雷奇(
(p) =>{
//检查o[p]未定义时的行为
结果[p]=o[p];
}
)
返回结果;
}
结果=objects.map(projectOne);
返回结果;
}

log(projectObjects(['roses'],[{'roses':1,'violets':2},{'roses':3,'begonias':22},{'daisies':0}])数组中的值的顺序总是相同的吗?是的,数组中的值的顺序总是相同的吗?是的,数组中的值的顺序总是相同的。forEach(key=>obj2[key]=`${key}value`)keys2.forEach(key=>obj2[key]=`${key}value`)