我有一个JavaScript模块,该模块导出了带有3个参数的箭头函数,以下示例:

// getMonth.js模块



export default (date, type, ...rest)  => {
  // Represent this return exmaple
  return date + ' ' + type + ' ' + rest
}





在主文件中,我有一个数组,我想将该数组的键分配为函数的参数



import getMonth from '../modules/month.js'

let splitedParams = ['2016/07/14', 'full']

getMonth({date, type, ...rest} = splitedParams)





但是此实现不正确,并且出现了一些错误,该怎么办?

谢谢

最佳答案

使用function.apply()

import getMonth from '../modules/month.js'

let splitedParams = ['2016/07/14', 'full']

getMonth.apply(null, splitedParams)


或使用spread operator...

getMonth(...splitedParams)


参见下面的示例所示:



let splitedParams = ['2016/07/14', 'full']

//using Function.prototype.apply()
getMonth.apply(null, splitedParams);

//using the spread operator
getMonth(...splitedParams);

function getMonth(date, type) {
  console.log('getMonth() - date: ', date, 'type: ', type);
}

09-18 19:08