키 와 value
> 어젯밤 에 본의 아니 게 아래 구조 와 비슷 한 코드 의 수치 추출 문 제 를 보고 관심 을 끌 었 습 니 다. 시간 이 좀 걸 려 서 demo 를 써 서 여러분 께 공유 해 드 렸 습 니 다.
1 var obj = [
2 {"2011":{"name":"jyjin","age":20}},
3 {"2012":{"name":"jyjin","age":21}}
4 ];
5
6 var obj1 = {
7 "2013":{"name":"jyjin","age":22},
8 "2014":{"name":"jyjin","age":23}
9 };
> 위의 구 조 를 자세히 살 펴 보면 위의 두 가지 구 조 는 전통 적 인 json 이나 배열 데이터 구조 와 약간의 차이 가 있 음 을 발견 할 수 있 습 니 다. 2011, 2012, 2013, 2014 등 키 값 이 중간 '키' 에 대한 곳 에 도 데 이 터 를 저장 하 는데 이런 방식 은 파일 의 저장 을 크게 줄 일 수 있 습 니 다.그래서 나 는 값 을 뽑 을 때 흥분 했다. 다음은 값 을 뽑 는 방식 에 대해 토론 해 보 자.
> \ # 1. 키 값 대 이해 기법 > 위의 어떤 데이터 구조 든 배열 이 든 대상 이 든 키 값 대 를 가 려 야 합 니 다. 제 기 교 는 먼저 짝 퉁 을 찾 는 것 입 니 다. *콜론 왼쪽 은 key 이 고 오른쪽 은 value 입 니 다. 콜론 이 없 는 기본 key 는 0 부터 차례대로 증가 합 니 다. 디 스 플레이 값 은 value * 입 니 다.> 그렇게 이해 하기 어렵 지 않다
1 obj key value
2 0 {"2011":{"name":"jyjin","age":20}}
3 1 {"2012":{"name":"jyjin","age":21}}
4
5 obj1 key value
6 2013 {"name":"jyjin","age":22}
7 2014 {"name":"jyjin","age":23}
> obj 의 value 를 뚜렷하게 발견 하고 key 와 value 를 세분 화 하 는 것 이 obj 1 의 key, value 구분 구조 입 니 다.
> \ # 2. 키 값 이 맞 는 값 1. for - in - ---------------------------------------------------- for - in 의 정확 한 이해 방식 은 for (var key in obj) 이다. 그 중에서 obj 는 js 대상 이나 배열 이다. 나 는 key 를 사용 하 는 것 은 value 값 이 아니 라 key 값 을 더욱 명확 하 게 가리 키 기 위해 서 이다.그래서 for - in 으로 배열 을 옮 겨 다 니 는 거 예요. 나 온 값 은 배열 아래 표 시 됩 니 다. js 대상 을 옮 겨 다 니 는 결 과 는 대상 속성 명 입 니 다.
1 for(var key in obj){
2 console.log(key);
3 }
4 :
5 0
6 1
7
8 for(var key in obj1){
9 console.log(key);
10 }
11 :
12 2013
13 2014
2. $. each () ------------------------------------------ jQuery 에서 $. each () 방법 은 키 값 이 맞 는 좋 은 방법 으로 이해 할 수 있 습 니 다. each (obj, function (key, value) {...}), obj 는 js 대상 이나 배열 일 수 있 습 니 다. key 와 value 는 각각 이름 값, 키 값 에 대응 합 니 다.여기 서 아주 나 쁜 습관 은 function (i, data) 로 쓰 는 것 입 니 다. 여기 서 i 대표 배열 의 아래 표, data 요소 값 으로 잘못 이해 하기 쉽 습 니 다. 사실은 이런 이 해 는 완전히 잘못된 것 입 니 다!
1 $.each(obj,function(key,value){
2 console.log(key+":"+value);
3 });
4 :
5 0:[object Object]
6 1:[object Object]
7
8
9
10 $.each(obj1,function(key,value){
11 console.log(key+":"+value);
12 });
13 :
14 2013:[object Object]
15 2014:[object Object]
16
17
18 for-in key, value , value 。。。
19
20 3. for-in $-each obj : 、 、
21
22
23 $.each(obj,function(objkey,objvalue){
24 $.each(objvalue,function(key,value){
25 console.log(key+":"+value.name+":"+value.age);
26 });
27 });
28 $.each(obj1,function(key,value){
29 console.log(key+":"+value.name+":"+value.age);
30 });
31
32 :
33 2011:jyjin:20
34 2012:jyjin:21
35 2013:jyjin:22
36 2014:jyjin:23
1 for(var objkey in obj){
2 $.each(obj[objkey],function(key,value){
3 console.log(key+":"+value.name+":"+value.age);
4 });
5 }
6 for(var obj1key in obj1){
7 console.log(obj1key)
8 $.each(obj1[obj1key],function(key,value){
9 console.log(":"+value);
10 });
11 }
12
13 :
14 2011:jyjin:20
15 2012:jyjin:21
16 2013
17 :jyjin
18 :22
19 2014
20 :jyjin
21 :23
다음으로 전송:https://www.cnblogs.com/jyjin/p/4180455.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.