Я предполагаю, что вы хотите проверить, что все moves
удовлетворяют ограничению, и в этом случае вы можете использовать Array.prototype.every
, чтобы гарантировать, что каждое движение удовлетворяет ограничению. Если вам нужно только moves
, чтобы удовлетворить это ограничение, вы можете использовать Array.prototype.some
.
// For example
const props = {
moves: [
{ moveName: 'FirstPassMove' },
{ moveName: 'PassMove' },
{ moveName: 'PassMove' },
{ moveName: 'OtherPassMove' },
]
};
function isValidMove({ moveName }) {
return moveName !== "FirstPassMove"
&& moveName !== "PassMove";
}
function getActionBoxButtonClassName(hasColor) {
return `actionBoxButton ${hasColor ? "actionBoxButtonGrey" : ''}`;
}
console.log([
getActionBoxButtonClassName(props.moves.every(isValidMove)),
getActionBoxButtonClassName(props.moves.some(isValidMove))
]);