endPoint = restart !== 1;
위의 조건문을 길게 적으면 아래와 같을 수 있다.
endPoint = restart !== 1 ? true : false
즉 1과 다르면 true를 할당하게 되는데 여기서 restart !== 1을 비교한 값 자체가 true가 반환되는 구조인 것을 알 수 있다.
그러므로 첫 코드처럼 길이를 줄여 조건문을 작성 할 수 있다.
다른 예
if (!endPoint && !startPoint) {
blabla...
}
위의 코드에서 endPoint 가 숫자형이라 하더라도 0은 거짓, 0이외의 수는 참이기 때문에 0 과 0 일 때만 실행한다는 뜻이 될 수 있다.