可以通过括号表示法在JavaScript中进行解构吗?

Ben*_*Ben 7 javascript destructuring reactjs eslint

这不一定是一个问题,更多的是通过ESLint错误产生的好奇心,这让我想知道是否有更好的方法只是禁用此行的ESLint.

请考虑下面的代码段.如果启用了反应/解构分配规则,则ESLint将给出错误

const { arrayToPrint } = myArraysconst arrayToPrint = myArrays[arrayName]

我的问题是,我无法找到任何参考,所以我猜不是,有没有办法移动[arrayName]到赋值的左侧进行destructure而不引用实际的对象属性?

const myArrays = {
  arrayOne: ['one'],
  arrayTwo: ['two'],
  arrayThree: ['three'],
}

const arrayPrinter = function arrayPrinter(arrayName) {
	const arrayToPrint = myArrays[arrayName]
  
  return arrayToPrint
}

console.log(arrayPrinter('arrayTwo'))
Run Code Online (Sandbox Code Playgroud)

Est*_*ask 7

可以使用计算属性进行解构:

const { [arrayName]: arrayToPrint } = myArrays;
Run Code Online (Sandbox Code Playgroud)