if 문 자바 스크립트의 for 루프가 예상대로 작동하지 않습니다.

user2860957

이 코드의이면에있는 아이디어는 누군가가 버튼을 클릭하고 존재하지 않는 경우 하나의 거짓 값을 삽입 할 때 매우 간단합니다. 그렇게하기 위해 나는 for 루프를 만들어서 얼마나 많은 거짓 값이 존재하는지, 그리고 그들이 더 적은지 확인합니다. 하나보다 거짓 값을 삽입하는 것보다

여기에 코드가 있습니다

addNote(index){
    const order = this.state.order
    var j =0;
    const note=order[index].note
    for(var i =0; i<note.length; i++){
        if(note[i].display===false){j++;}
        if(j==0){note[note.length]={display:false}}
        console.log(j)
    }
    console.log(note)
    this.setState({order:this.state.order}) 
}

콘솔 로그 결과를 보면 각 클릭에 대해 j 값이 증가하는 것입니다. 내 if 문이 각 클릭에 대해 작동하는 이유보다 j 값이 0 인 경우에만 작동해야합니다.이 줄에 대해 이야기하고 있습니다. if(j==0){note[note.length]={display:false}}

클릭하기 전의 배열입니다.

0:Object
        display:true
        note:"jhj"

두 번째 클릭 후 배열

0:Object
        display:true
        note:"jhj"
    1:Object
        display:false

두 번째 클릭 후 배열

 0:Object
    display:true
    note:"jhj"
1:Object
    display:false
2:Object
    display:false
펠릭스 클링

if명령문이 모두 루프 안에 있으면 호출 될 때마다 배열에 새 항목을 추가합니다 addNote. 있다고 때문은 j항상 0루프의 첫 번째 반복에와 있기 때문 note[0].display이다 true, 그것을 유지 0. 이어서 물론 if (j==0)이다 true어레이에 새로운 요소를 추가. 즉, 각 요소를 함께 보는 것이 아니라 개별적으로보고 새 항목을 추가할지 여부를 결정하는 것입니다.

1보다 작 으면 거짓 값을 삽입하고 그렇지 않으면 아무것도하지 않습니다.

그것은 당신의 코드가하는 일이 아닙니다. 경우 귀하의 코드는 새 값을 삽입 어떤 항목이있다 display: true. 첫 번째 요소에 해당 항목이 있으므로 코드는 항상 새 항목을 추가합니다.

다음 코드는 루프 대신 원하는 작업을 수행합니다.

if (!note.some(item => item.display === false)) {
  note.push({display:false});
}

" display === false새 요소 추가 하는 요소가없는 경우"로 번역됩니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

자바 스크립트 계산기의 피연산자가 예상대로 작동하지 않습니다.

분류에서Dev

자바 스크립트의 문자열 교체가 제대로 작동하지 않습니다.

분류에서Dev

여기 문서 내부의 bash 스크립트가 예상대로 작동하지 않습니다.

분류에서Dev

str_replace가 예상대로 작동하지 않습니다-멀티 바이트 문자 세트?

분류에서Dev

PHP의 문자열 바꾸기가 예상대로 작동하지 않습니다.

분류에서Dev

C 문자 입력이 스위치 및 for 루프에서 예상대로 작동하지 않습니다.

분류에서Dev

자바 스크립트 개체 참조가 예상대로 작동하지 않습니다.

분류에서Dev

Firefox에서 자바 스크립트가 예상대로 작동하지 않습니다.

분류에서Dev

상대 자바 스크립트 경로가 작동하지 않습니다.

분류에서Dev

문자에 대한 루프가 작동하지 않습니다.

분류에서Dev

AWS EC2 사용자 데이터 스크립트가 예상대로 작동하지 않습니다.

분류에서Dev

자바 스크립트의 정규식 표현식이 예상대로 작동하지 않습니다.

분류에서Dev

for 루프 문에서 Async / Await가 예상대로 작동하지 않습니다.

분류에서Dev

Python 문자열 슬라이스가 예상대로 작동하지 않습니다.

분류에서Dev

IF 문의 Linux Bash OR 연산자가 예상대로 작동하지 않았습니다.

분류에서Dev

간단한 자바 스크립트 루프가 의도 한대로 작동하지 않음

분류에서Dev

자바 스크립트 : For 루프가 작동하지 않습니다.

분류에서Dev

PHP 문자열 비교가 예상대로 작동하지 않습니다.

분류에서Dev

Float TryParse가 문자열에서 예상대로 작동하지 않습니다.

분류에서Dev

문자열 일치가 예상대로 작동하지 않습니다.

분류에서Dev

문자열 비교가 예상대로 작동하지 않습니다.

분류에서Dev

PowerShell 스크립트가 예상대로 작동하지 않음 (foreach 루프)

분류에서Dev

'$ {}'가 자바 스크립트에서 의도 한대로 작동하지 않습니다.

분류에서Dev

자바는 예상대로 스트림 소비자 인터페이스가 작동하지 않습니다

분류에서Dev

자바 스크립트`this` 문이 작동하지 않습니다.

분류에서Dev

CMD / 배치 / 레지스트리-문자열 교체가 예상대로 작동하지 않습니까?

분류에서Dev

PHP 스크립트가 예상대로 작동하지 않습니다.

분류에서Dev

Redis Lua 스크립트가 예상대로 작동하지 않습니다.

분류에서Dev

배치 스크립트가 예상대로 작동하지 않습니다.

Related 관련 기사

  1. 1

    자바 스크립트 계산기의 피연산자가 예상대로 작동하지 않습니다.

  2. 2

    자바 스크립트의 문자열 교체가 제대로 작동하지 않습니다.

  3. 3

    여기 문서 내부의 bash 스크립트가 예상대로 작동하지 않습니다.

  4. 4

    str_replace가 예상대로 작동하지 않습니다-멀티 바이트 문자 세트?

  5. 5

    PHP의 문자열 바꾸기가 예상대로 작동하지 않습니다.

  6. 6

    C 문자 입력이 스위치 및 for 루프에서 예상대로 작동하지 않습니다.

  7. 7

    자바 스크립트 개체 참조가 예상대로 작동하지 않습니다.

  8. 8

    Firefox에서 자바 스크립트가 예상대로 작동하지 않습니다.

  9. 9

    상대 자바 스크립트 경로가 작동하지 않습니다.

  10. 10

    문자에 대한 루프가 작동하지 않습니다.

  11. 11

    AWS EC2 사용자 데이터 스크립트가 예상대로 작동하지 않습니다.

  12. 12

    자바 스크립트의 정규식 표현식이 예상대로 작동하지 않습니다.

  13. 13

    for 루프 문에서 Async / Await가 예상대로 작동하지 않습니다.

  14. 14

    Python 문자열 슬라이스가 예상대로 작동하지 않습니다.

  15. 15

    IF 문의 Linux Bash OR 연산자가 예상대로 작동하지 않았습니다.

  16. 16

    간단한 자바 스크립트 루프가 의도 한대로 작동하지 않음

  17. 17

    자바 스크립트 : For 루프가 작동하지 않습니다.

  18. 18

    PHP 문자열 비교가 예상대로 작동하지 않습니다.

  19. 19

    Float TryParse가 문자열에서 예상대로 작동하지 않습니다.

  20. 20

    문자열 일치가 예상대로 작동하지 않습니다.

  21. 21

    문자열 비교가 예상대로 작동하지 않습니다.

  22. 22

    PowerShell 스크립트가 예상대로 작동하지 않음 (foreach 루프)

  23. 23

    '$ {}'가 자바 스크립트에서 의도 한대로 작동하지 않습니다.

  24. 24

    자바는 예상대로 스트림 소비자 인터페이스가 작동하지 않습니다

  25. 25

    자바 스크립트`this` 문이 작동하지 않습니다.

  26. 26

    CMD / 배치 / 레지스트리-문자열 교체가 예상대로 작동하지 않습니까?

  27. 27

    PHP 스크립트가 예상대로 작동하지 않습니다.

  28. 28

    Redis Lua 스크립트가 예상대로 작동하지 않습니다.

  29. 29

    배치 스크립트가 예상대로 작동하지 않습니다.

뜨겁다태그

보관