소년코딩

each

each함수는 배열의 각 요소 혹은 객체의 각 프로퍼티를 꺼내서 차례대로 특정 함수에 인자로 넣어 실행시키는 함수다.

매우 유용한 함수로 대부분의 자바스크립트 라이브러리에 기본적으로 구현되어있따.

보통 each 또는 forEach 라는 이름으로 제공된다.

 

- jQuery 1,0의 each 함수

// jQuery 1.0의 each() 함수
 
function each(obj, fn, args) {
     if (obj.length == undefined) {
          for (var i in obj) {
               fn.apply(obj[i], args || [i, obj[i]]);
          }
     }
     else {
          for (var i = 0; i < obj.length; i++) {
               fn.apply(obj[i], args || [i, obj[i]]);
          }
     }
 
     return obj;
}
 
each([1, 2, 3], function(idx, num) {
     console.log(idx + ': ' + num);
});
/* 0: 1   1: 2   2: 3 */
 
var blog = {
     name : 'oppacoding',
     age: 25,
     gender: 'man'
};
 
each(blog, function(name, value) {
    console.log(name + ': ' + value);
});
/* name: 'oppacoding'   age: 25   gender: 'man' */

each

obj에 length 프로퍼티가 있는 경우(배열)와 없는 경우(객체)로 나누어서 루프를 돌며, 

각 요소를 인자로 하여 차례대로 함수를 호출한다


 

자바스크립트

by 소년코딩

추천은 글쓴이에게 큰 도움이 됩니다.

악플보다 무서운 무플, 댓글은 블로그 운영에 큰 힘이됩니다.

댓글 로드 중…

블로그 정보

소년코딩 - 소년코딩

소년코딩, 자바스크립트, C++, 물리, 게임 코딩 이야기

최근에 게시된 이야기