不知道 ES6 是否可行。 我正在一个项目中工作,该项目有一个函数,该函数传递一个具有许多属性的对象。现在代码如下:
function foo({arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8}){
this.model = arg1;
this.model = arg2;
// and so on...
};
obj = {
arg1: 'some',
arg2: 'whatever',
arg3: 'text'
// and so on up to 8
arg8: 'end text'
}
foo(obj);
如果可能的话,Mi 希望的输出将是访问如下参数:
function foo( {...args} ){ // not working
this.model = arg1;
this.model = arg2;
// and so on...
};
obj = {
arg1: 'some',
arg2: 'whatever',
arg3: 'text'
// and so on up to 8
arg8: 'end text'
}
foo(obj);
所以问题是:有什么方法可以让函数在单个 var (args) 中获取参数对象并将它们解构以供使用吗?
最佳答案
有几种方法可以做到这一点。 第一个是将所有参数存储在一个变量中,然后销毁它
function foo(...args){
const { arg1, arg2 } = args
this.model = arg1;
this.model = arg2;
// and so on...
};
或者
function foo({ arg1, arg2 }){
this.model = arg1;
this.model = arg2;
// and so on...
};
关于javascript - 解构对象像参数一样传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54130263/