공부

190320 1차시 행아웃 - evaluation, identifier, expression, 프로퍼티에 접근하는 방법

*수업 정리용이며 용어의 의미가 정확하지 않거나 다른 의미일 수 있습니다.



평가 = 해석 = evaluation

identifier 식별자 token과 같은 의미이지만 토큰이 더 큰 의미
function foo console -> 토큰

if() 블럭 안에 올 수 있는 건 해석(evaluation) 평가가 가능한 것만 와야한다.

표현 expression

c == 0? 1: -1    //표현식

문 statement
while(){}    //반복문


expression 값이 될 수 있는 것 = 표현식
statement 값이 될 수 없는 것 = 값이 될 수 없는 것

flow control (흐름의 영향을 주는 것)

for (초기화; 반복마다 검사할 조건; 매 반복마다 일어나는 문(statement)) {}


*for문 초기화에서 var를 썼을때의 문제점
함수 레벨 스코프여서 수의 값이 for문 밖에도 남아있음


for loop 초기화식에서 사용한 변수를
for loop 외부 또는 *전역에서 참조할 수 있다.


관련 설명 - https://coolpiz-em.tistory.com/27?category=784598


var는 함수 스코프이고 let은 블록스코프이다. for문 밖에 영향을 주지 않는다.


for문을 깨고 나오고 싶을때

for문 안에 if() {break;} if문을 써서 나오면 된다.


- break;와 continue의 차이

break는 for문 전체를 깨고 나오는데 continue는 현재 (반복)문만 깨고 나온다.


- for문과 while문을 쓰는 예

반복의 대상의 길이가 정해져 있거나 정하기 쉬운 경우 == for 문

그렇지 않은 경우 while



array2.a == 55는


array2 {
    a: 55;
}
와 같은 의미이다.

프로퍼티에 접근하는 방법

1. 로케이션

obj.a

2. 브라켓

obj['a']

- 브라켓을 쓰는 경우

표현식이 가능해서, 평가식 필요할 때 동적인 것을 위해서

let st = 'xxxaxxxx';

일때

obj[st.charAt(3)] => 'a'

- 로케이션으로 값을 불러오고 싶을때

공백의 값을 가지고 올 수 없다.

└ 내가 a라는 프로퍼티가 a가 될 것을 알 때


*용어

() paren

{} curly braces (파마머리)
[] array access


화면을 만들때 퍼포먼스 시간을 줄이려면

$() 셀렉터를 한정시킨 다음

그 다음부터 find()로 찾는게 시간을 효율적으로 줄이는 방법이다.

찾는 범위를 한정시켜주는 것이다.