728x90
반응형

참고: http://api.jquery.com/

 

# $.each() , $.fn.each()

- foreach 방식으로 데이터 처리.

- array, object 의 property를 순서대로 처리 가능.

- selector 집합 객체 를 순서대로 처리 가능.

1. selector 집합 처리 샘플

<ul>

  <li>foo</li>

  <li>bar</li>

</ul> 

 

$( "li" ).each(function( index ) {

  console.log( index + ": " + $( this ).text() );

});

 

2. 일반 array 처리 샘플

$.each([ 52, 97 ], function( index, value ) {

  alert( index + ": " + value );

}); 

 

3. object의 key-value pair 처리 샘플

var obj = {

  "flammable": "inflammable",

  "duh": "no duh"

};

$.each( obj, function( key, value ) {

  alert( key + ": " + value );

});

 

# $.fn.map(), $.map()

- $.fn.map(): selector 집합 객체를 순서대로 처리하면서 jQuery array Object 를 구성한다. 

- $.map(): array, jQuery array Object 를 javascript array로 구성한다. 

 

1. selector 집합 처리 샘플

 <form method="post" action="">

<fieldset>
<div>
<label for="two">2</label>
<input type="checkbox" value="2" id="two" name="number[]">
</div>
<div>
<label for="four">4</label>
<input type="checkbox" value="4" id="four" name="number[]">
</div>
<div>
<label for="six">6</label>
<input type="checkbox" value="6" id="six" name="number[]">
</div>
<div>
<label for="eight">8</label>
<input type="checkbox" value="8" id="eight" name="number[]">
</div>
</fieldset>
</form>

 

$( ":checkbox" )
.map(function() {
return this.id;
})
.get() // jQuery array Object 를 javascript Array 로 변경.
.join(); // Array를 String으로 변경.

 

2. array, jQuery array Object를 array로 변경.

var arr = ["22","33","44"];

var bbb = $.map(arr, function (value) {

            return value + "구";

        });

 

alert(bbb); 

 

#  $.inArray(value, array) 

- javascript 의 .indexOf()와 동일한 기능을 한다. (.IE8에는 .indexOf 함수를 지원하지 않는다.)

1. 샘플

var arr = [ 4, "Pete", 8, "John" ];

var index = jQuery.inArray( "John", arr );

alert (index); 

 

# $.grep(array, function(elementOfArr, indexInArr)[,invert])

- array 배열에서 function 으로 필터해서 새로운 Array를 생성한다. array에는 영향을 주지 않는다. 

1. 샘플

var arr = [ 1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1 ];

 

var tempArr = jQuery.grep(arr, function( n, i ) {

  return ( n !== 5 && i > 4 );

});

 

alert (tempArr.join(",")); 

 

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,