반응형
반대로 반복문을 동작시키는(reverse iteration이라고 함) 경우가 실제 브라우저에서 얼마나 성능차이가 있을까요? 현대의 자바스크립트 엔진은 최적화를 통해 반복문을 최대한 빠르게 처리하는 과정을 거쳐왔습니다. 실제로 실험을 해보면 그 차이가 미미하다는 것을 알게 될 것입니다. 따라서 for문을 무조건 반대로 구현할 필요는 없습니다. 이런 상황이외에도 자바스크립트의 구현방법에 따라 (for 가 빠를까 while 빠를까? 등) 성능차이는 그리 크지 않습니다. 일반적으로는 코드의 가독성에 좀더 우선집중하는 게 좋습니다. 

for( var i = arr.length; i != 0; i--) {} 와 같은 형태로 하면 .length 메소드를 한번만 호출해서 맨 처음 .length를 매번 호출하는 것보다 빠르다는 것 같네요


비교문

if , else if, else 를 통해서 다양한 비교문을 사용할 수 있습니다. 

MDN 링크 바로가기


분기 - switch 

로직을 분기하기 위해서 if문 이외에도 switch 문을 통해서도 해결할 수 있습니다. 

MDN 링크 바로가기


반복
for 문이나 while문을 사용해서 반복문을 구현할 수 있습니다.

function howMany(selectObject) {
  var numberSelected = 0;
  for (var i = 0; i < selectObject.options.length; i++) {
    if (selectObject.options[i].selected) {
      numberSelected++;
    }
  }
  return numberSelected;
}

배열의 경우 forEach와 같은 메서드도 있고, for-of를 통한 탐색도 자주 사용됩니다.

(for-in은 객체를 탐색할때 사용합니다)

forEach와 같은 메서드의 사용법이 익숙하지 않다면, 우선은 for문으로 배열을 탐색하는 것으로 충분합니다.

MDN 링크 바로가기

 

문자열 처리

자바스크립트의 문자와 문자열은 같은 타입으로 모두 문자열입니다.

typeof "abc";  //string
typeof "a";    //string
typeof 'a';    //string. single quote도 사용가능.

문자열에 다양한 메서드가 있습니다.

"ab:cd".split(":"); //["ab","cd"]
"ab:cd".replace(":", "$"); //"ab$cd"
" abcde  ".trim();  //"abcde"

forEach vs for ...in vs for ...of 반복문에 대한 글

http://itstory.tk/entry/Javascript-for-in-vs-for-of-%EB%B0%98%EB%B3%B5%EB%AC%B8?category=969082


반응형

'웹개발 > 부스트코스(웹프로그래밍)' 카테고리의 다른 글

자바스크립트 함수 호출 스택  (0) 2019.01.01
자바스크립트 함수  (0) 2019.01.01
자바스크립트  (0) 2018.12.27
Request Response  (0) 2018.12.25
servlet 라이프 싸이클  (0) 2018.12.24
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기