30秒学会 JavaScript 片段 · 2019年8月9日

30秒学会 JavaScript 片段 – yesNo

Returns true if the string is y/yes or false if the string is n/no.

Use RegExp.test() to check if the string evaluates to y/yes or n/no.
Omit the second argument, def to set the default answer as no.

代码片段

const yesNo = (val, def = false) =>
  /^(y|yes)$/i.test(val) ? true : /^(n|no)$/i.test(val) ? false : def;

使用样例

yesNo('Y'); // true
yesNo('yes'); // true
yesNo('No'); // false
yesNo('Foo', true); // true