> 웹 프론트엔드 > JS 튜토리얼 > jQuery의 각 기능에 대한 자세한 설명과 예시

jQuery의 각 기능에 대한 자세한 설명과 예시

php中世界最好的语言
풀어 주다: 2017-12-04 14:14:35
원래의
2691명이 탐색했습니다.

JQuery에서 각 함수는 매우 강력하고 많은 데이터를 탐색할 수 있다는 것을 알고 있으므로 이번에는 jQuery의 각 함수 사용 방법과 예제를 자세히 소개하겠습니다.

$.each()는 $(selector).each()와 다릅니다. 후자는 jquery 객체를 탐색하는 데 특별히 사용됩니다(배열이든 객체이든). 배열입니다, 콜백 함수 배열의 인덱스와 해당 값이 전달될 때마다(값은 this 키워드를 통해서도 얻을 수 있지만 JavaScript는 항상 이 값을 객체로 래핑합니다. 문자열 또는 숫자), 메소드는 순회된 객체를 반환합니다. 의 첫 번째 매개변수

each() 메소드는 DOM 루프 구조를 단순하고 오류가 덜 발생하도록 만들 수 있습니다. Each() 함수는 매우 강력한 순회 함수를 캡슐화하고 사용이 매우 편리합니다.

1차원 배열, 다차원 배열, DOM, JSON 등을 순회할 수 있습니다.

$each를 사용하면 JavaScript 개발 과정 우리의 작업량.

다음은 각각의 일반적으로 사용되는 몇 가지 용도입니다.

각각은 1차원 배열을 처리합니다

var arr1 = [ "aaa", "bbb", "ccc" ]; 
$.each(arr1, function(i,val){ 
  alert(i); 
  alert(val);
});
로그인 후 복사

alert(i)는 0, 1, 2를 출력합니다

alert(val)는 aaa, bbb, ccc

각각 처리를 출력합니다

2차원 배열

vararr2 = [['a','aa','aaa'], ['b','bb','bbb'], ['c','cc','ccc']]
$.each(arr, function(i, item){
  alert(i);
  alert(item);
});
로그인 후 복사

arr2는 2차원 배열이고, item은 이 2차원 배열의 각 배열을 취하는 것과 같습니다.

item[0]은 각 1차원 배열

alert(i)의 첫 번째 값을 기준으로 0, 1, 2를 출력합니다. 왜냐하면 이 2차원 배열에는 3개의 배열 요소가 포함되어 있기 때문입니다.

alert(item )은 다음과 같습니다. ['a', 'aa', 'aaa'], ['b', 'bb', 'bbb'], ['c', 'cc', 'ccc']

이것은 비트 배열 뒤에 처리가 약간 변경되면

var arr = [['a', 'aa', 'aaa'], ['b','bb','bbb'], ['c','cc','ccc']]
$.each(arr, function(i, item){
 $.each(item,function(j,val){
     alert(j);
    alert(val);
 });
});
로그인 후 복사

alert(j)는 0, 1, 2, 0, 1, 2, 0, 1, 2로 출력됩니다.

alert(val)은 a, aa, aaa, b로 출력됩니다. , bb, bbb, c, cc, ccc

각각은 json 데이터를 처리합니다. 이것은 각각 훨씬 더 강력하며 모든 속성을 순환할 수 있습니다

var obj = { one:1, two:2, three:3};
$.each(obj, function(key, val) {
  alert(key);
  alert(val);
});
로그인 후 복사


여기에서 Alert(key)는 하나 둘 셋

alert( val)은 1, 1, 2, 2, 3, 3을 출력합니다

여기서 키가 숫자가 아닌 속성인 이유는 무엇입니까? json 형식은 순서가 지정되지 않은 속성-값 집합이므로 어디에 있습니까? 숫자는 어떻습니까?

그리고 이 값은 obj[key]

ecah가 dom 요소를 처리하는 것과 동일합니다. 여기서는 입력 양식 요소가 예로 사용됩니다.

dom에 이러한 코드가 있고

각각을 다음과 같이 사용하는 경우

$.each($("input:hidden"),function(i,val){
  alert(val);
  alert(i);
  alert(val.name);
  alert(val.value);
});
로그인 후 복사

그런 다음 Alert(val)은 양식 요소이므로 [object HTMLInputElement]를 출력합니다.

alert(i)는 0, 1, 2, 3을 출력합니다

alert(val.name); aaa, bbb, ccc, ddd를 출력합니다. this.name을 사용하면 동일한 결과가 출력됩니다

alert (val .value); this.value를 사용하면 동일한 결과가 출력됩니다. 위의 코드를 다음 형식으로 변경하면 출력 결과는 다음과 같습니다. 둘에 관해서는 이 두 가지 글쓰기 방법의 차이점이 무엇인지 모르겠습니다. 이 변경 사항은 위의 배열 작업에 적용될 때 동일한 결과를 생성합니다.

이렇게 해서 여러 사례의 실제 결과가 답변되었습니다. 그런 다음 계속 공부하면 무슨 일이 일어나고 있는지, 왜 일어나는지 결코 알 수 없습니다.

위의 예에서 jQuery와 jQuery 개체 모두 이 메서드를 구현하는 것을 볼 수 있습니다. jQuery 개체의 경우에는 Each 메서드가 단순히 위임됩니다. jQuery 개체는 jQuery의 각 메서드에 첫 번째 매개 변수로 전달됩니다.


jQuery에서 각 구현을 살펴보세요(네트워크 발췌)

$("input:hidden").each(function(i,val){
  alert(i);
  alert(val.name);
  alert(val.value);
});
로그인 후 복사

jquery는 들어오는 요소를 기준으로 자동으로 판단한 다음 판단 결과에 따라 적용 또는 호출 메서드를 사용합니다. fn 구현에서 이 포인터를 직접 사용하여 배열이나 객체의 하위 요소를 참조할 수 있습니다.

1.obj 개체는 배열입니다.

각 메서드는 특정 하위 요소를 호출하여 반환된 결과가 false가 될 때까지 배열의 하위 요소에 대해 fn 함수를 하나씩 호출합니다. 제공된 fn 함수에서 특정 조건을 충족한 후 각 메서드 호출을 종료합니다. 각 메서드가 arg 매개변수를 제공하는 경우 fn 함수 호출에 의해 전달된 매개변수는 arg입니다. 그렇지 않으면 하위 요소 인덱스, 하위 요소 자체입니다

2.obj 객체가 배열이 아닙니다

가장 큰 차이점 이 메소드와 1 사이에는 fn 메소드가 반환 값에 관계없이 하나씩 수행됩니다. 즉, fn 함수가 false를 반환하더라도 obj 객체의 모든 속성은 fn 메서드에 의해 호출됩니다. 호출에 전달된 매개변수는 1과 유사합니다.

이 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

관련 읽기:

실행할 때 JS 엔진은 어떤 모습인가요?

JS 개발에서 jssplice() 메서드를 사용하는 방법

nodejs를 다운로드하고 설치하는 방법

위 내용은 jQuery의 각 기능에 대한 자세한 설명과 예시의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿