具有三元运算符语法的JavaScript Prime Checker函数

时间:2017-07-29 00:53:35

标签: javascript ecmascript-6 ternary-operator

如何使用三元运算符语法重构以下内容?

let divisor = 2;
let isPrime = (num) => {
        if (num % divisor === 0) return false;
        else divisor++;
        return true;
};

console.log(`prime is ${isPrime(83)}`);

2 个答案:

答案 0 :(得分:1)

您可以:exp2 let divisor = 2; let isPrime = num => num % divisor === 0 ? false : (++divisor, true); console.log(`prime is ${isPrime(83)}`); <html> <head> <title>Lizzy McGuire, an Evolution</title> </head> <div class="container"> <div class="jumbotron"> <body> <h1 style="jumbotron-h1" class="text-center">Hey now, hey now.</h1> </body> </div> </div> </html> <html> <head> <title>Lizzy McGuire, an Evolution</title> <link rel="stylesheet" type="text/css" href="stylesheet.css"> </head> <body> <div class="container"> <div class="jumbotron"> <h1>Hey now, hey now.</h1> </div> </div> </body> </html> {{}}} {/ 3}}

&#13;
&#13;
.jumbotron h1 {
  color: #513271;
}
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您可以增加数字并将其转换为布尔值,因为非0的数字将转换为true

(num) => num % divisor ? // > 0 == true : 0 == false
    !!(++divisor) // increment and convert to boolean
    : 
    false

let divisor = 2;
const isPrime = (num) => num % divisor ? !!(++divisor) : false;

console.log(`prime is ${isPrime(83)}`);