다섯번째편
===============================
문장 statement
-명령을 수행
-예) if , for
-자바스크립트 프로그램이란 문장의 모음을 말한다.
표현문
i++;
++i;
delete a.a;
문장 안에
표현식이
존재한다.
문장이란?
-복합문
-문장
-문장
-문장
.........
if문
if(표현식)문장
false(거짓이 나오는 것들)
0,-0,null,false,NaN,undefined,''
이 외에는 참으로 처리가 된다.
0 과 -0 은 다르다,
근데
0 === -0 은 true 가 나온다
하지만
다르다
1/0 (1나누기 0)을 하면 무한이 나온다
그리고
1 나누기 -0 을하면 -무한 이 나온다
if (true)
if(false)
console.log(1);
else
console.log(2);
// 2 출력
참고로 자바스크립트는 들여쓰기를 통해 블럭을 구분하지는 않는다.
뭐 들여쓰기가 프로그래밍에 영향을 끼치지는 않는다.
==========================
일단 전시간 예습!!!!!
p = [2];
i=3;
l=j=1;
while(i<100){
!j
&&
(l=j=p.push(i++))
||
i %p[--j]
||
(i++,j=l)
}
=====================================
위 코드를 한줄로 작성하면 아래코드처럼 된다.
그리고 이 코드도 아래처럼 변경할수있다.
p = [2];i=3;l=j=1;while(i<100){!j&&(l=j=p.push(i++))||i%p[--j]||(i++,j=l)}
해석 :
&& 는 if 문으로 바뀔수가 있다.
그래서 밑에 보면 if문으로 바뀜
!j 는 (j===0) 이렇게 변경
그리고
&&에서
(l=j=p.push(i++)) 이부분이 참이면 뒤에있는걸 실행하지않는다.
그래서
else if 로 저 부분을 저렇게 표현함!
p 에 2를 집어넣고
시작은 3부터 시작을 한다
그래서
i<100
즉, 100이하까지 소수를 판단하는거다
p = [2];
i=3;
l=j=1;
while(i<100){
if(j===0){
l = j = p.push(i++); // 이부분은 위에가 만족되면 이렇게 대입시킴!
}else if(i%p[--j]===0){ // 이부분은 나누어 떨어지면 소수가 아니죠, 그래서
i++,j=l; // 이부분으로 넘어가는거다.
}
}