빈 그룹은 다음 세 가지 반복에서 변경할 수 없습니다. forEach, 맵, for...in

3787 단어
우선, 우리는 forEach, 맵, for에 대해 알아야 한다.in 세 가지 반복, 공수조가 아닌 상황에서 원수조를 변경하는 방법을 실현하려면 코드는 다음과 같다.
    var list  = [1,2,3,4];
    var list1 = [1,2,3,4];
    var list2 = [1,2,3,4];
    
    list = list.map(function(item){
        return item+1;
    })
    
    list1.forEach(function(item,index,arr){
        arr[index] = item+1
    })
    
    for (var p in list2) {
        list2[p] = 1
    }
    
    console.log(list);  //[2,3,4,5]
    console.log(list1)  //[2,3,4,5]
    console.log(list2); //[1,1,1,1]

공수조에 대해 우리는 같은 처리를 해서 결과가 어떠한지 봅시다.
    var list  = [];
    var list1 = [];
    var list2 = [];
    
    list.length  = 4;
    list1.length = 4;
    list2.length = 4;
    
    list = list.map(function(item){
        return item+1;
    })
    
    list1.forEach(function(item,index,arr){
        arr[index] = item+1
    })
    
    for (var p in list2) {
        list2[p] = 1
    }
    
    console.log(list);  //Array [ <4 empty slots> ]
    console.log(list1)  //Array [ <4 empty slots> ]
    console.log(list2); //Array [ <4 empty slots> ]

화호 브라우저에서 우리는 결과를 똑똑히 볼 수 있다. Array [<4 empty slots>], 공수 그룹은 같은 방법으로 원수 그룹의 데이터를 변경할 수 없다는 것을 발견할 수 있다.풋내기 강좌에서 우리는 다음과 같은 결론을 찾을 수 있다.
1、map()은 빈 그룹을 검사하지 않습니다
2. forEach () 는 빈 그룹에 대해 리셋 함수를 실행하지 않습니다.
for...in 순환에서 빈 그룹을 변경할 수 없는 이유는 다음과 같습니다.
    var list  = [];
    list.length  = 4;
    
    for (var p in list) {
        console.log(list[p])
    }

구글 파이어폭스 등 브라우저 컨트롤러에서 우리는 어떤 데이터 출력도 볼 수 없다. 이것은 for...빈 그룹을 반복할 수 없습니다.
3. 실천을 통해 우리는 for...in 순환은 빈 그룹을 반복할 수 없습니다
다음으로 전송:https://www.cnblogs.com/hrlin/p/8353550.html

좋은 웹페이지 즐겨찾기