我如何在某些可能发生的极端情况下实现目标。

//边缘情况
如果mediaTypeundefined,则应返回undefinedinfinity;如果mediaTypexs,则应返回带有当前实现的xs

//编码当前实现

function getCurrentBreakpoint(mediaType) {
  const mediaTypes = ["xs", "sm", "md", "lg", "xl", "infinity"];
  return mediaTypes[mediaTypes.indexOf(mediaType) - 1];
}


这里有任何帮助。

最佳答案

您可以使用Array#find



function getCurrentBreakpoint(mediaType) {
  const mediaTypes = ["xs", "sm", "md", "lg", "xl", "infinity"];
  return mediaTypes.find(mt => mt === mediaType);
}

console.log(getCurrentBreakpoint('xs'));
console.log(getCurrentBreakpoint('foo'));
console.log(getCurrentBreakpoint());





如果您真的想使用三元运算符,则可以使用它。

return mediaTypes.includes(mediaType) ? mediaType : undefined

10-04 15:37