是否可以像这样转换对象:
{'para1':'hey','para2':'wow'}
使用类似函数内的相同键输入参数:
window['test']({'para1':'hey','para2':'wow'})
使用功能:
function test(para1,para2){alert(para1);alert(para2)}
代替:
function test(parameters){alert(parameters['para1']);alert(parameters['para2'])}
结果:
嘿哇
答案 0 :(得分:0)
您可以为此使用对象分解:
function test({ para1, para2}) {
alert(para1);
alert(para2)
}
test({ 'para1': 'hey', 'para2': 'wow' })
答案 1 :(得分:0)
您是指动态输入参数吗?
function test() {
var i;
var result = '';
for(i = 0; i < arguments.length; i++) {
if(typeof(arguments[i])=='object'){
for(ob in arguments[i])
result += arguments[i][ob] +' ';
}
else result += arguments[i] +' ';
}
return result;
}
var inObj = {'para1':'I', 'para2':'Love', 'paraMore':'You'};
alert(test(inObj));
答案 2 :(得分:-1)
是的,您可以使用eval函数以动态形式添加变量:
尝试一下:
function Test(object){
Object.entries(object).forEach((entry) => {
eval(entry[0]+' = "'+entry[1]+'"');
});
Object.keys(object).forEach((entry) => {
eval('console.log('+entry+')');
});
}
Test({'eric': 'hello'})
这应该打个招呼