尽可能短地最小化函数



如何使此函数尽可能短?

function toggle(id){
console.log(squares)
setSquares(prevSquares => {
const newSquares = [...prevSquares]
newSquares[id-1].on = !newSquares[id-1].on;
return newSquares;
})
}

我试着让它最小化,最后一个wokred完美的功能在下面提到

function toggle(id){
setSquares(prevSquares => {prevSquares[id-1].on = !prevSquares[id-1].on
return([...prevSquares])
})
}

我想知道我们能不能把它做得更小?

以下是缩短toggle函数的方法:

const toggle = (id) => {
setSquares(squares => (
flipSquareAt(squares, id-1)
)
};

然后在文件的其他地方(或在包含所有平方相关函数的另一个文件中(:

const flipSquareAt = (squares, i) => {
const result = [...squares];
result[i] = {...result[i], on: !result[i].on};
return result;
};

它不会减少你项目中的总行数,但我不明白你为什么想要这样。

最新更新