개발소발말발
20
2019-04-16 12:36:23 작성 2019-04-16 12:38:28 수정됨
6
169

여기서 undefined 뜨는 이유 질문


for(var i = 0; i < data.statisticsList.length; i++){

if(data.statisticsList[i].flag == "1" || data.statisticsList[i].flag == "2" || data.statisticsList[i].flag == "3"){

var array = Object.keys(data.statisticsList[i]);

for(var a = 0; a < array.length; a++){

var arrayString = array[a];

var check = "month";


                                console.log(array);

console.log(arrayString);

console.log(data.statisticsList[i]);

console.log(data.statisticsList[i].arrayString); //undefined


if(arrayString.indexOf(check) != -1){

data.statisticsList[i].arrayString = data.statisticsList[i].arrayString + "aaa";

}

}

}else {

data.statisticsList[i].month1 = data.statisticsList[i].month1 + "bbb";

}

}


4번째 콘솔에서 undefined가 뜨는 이유를 알려주세요.

이렇게는 사용할 수 없는건가요?

4번째 콘솔의 값을 얻으려면 어떻게 해야 하나요?

0
0
  • 답변 6

  • full
    281
    2019-04-16 12:48:01

    리스트에 arrayString이란 변수가없으니 당연히 언디파인드 뜰태고 

    하고자하시는게 뭔질모르겟네요;;

    1
  • 개발소발말발
    20
    2019-04-16 13:01:02

    var arrayString = array[a];
    이렇게 값을 추가 해줬습니다.
    statisticsList에 있는 array[a]의 값들을 얻고 싶어서요...

    0
  • full
    281
    2019-04-16 13:05:18

    님말대로라면 2번째 로그에서 출력됬을텐데요?

    0
  • 개발소발말발
    20
    2019-04-16 13:06:49
    네 1,2,3 번째 로그에서는 전부 출력이 되는데 4번째 로그에서만 출력이 안됩니다.
    0
  • 사는게힘듭니다
    1k
    2019-04-16 13:09:26

    ArrayIndexOutOfBoundsException을 검색해보세요.

    0
  • 하루를 즐겁게
    396
    2019-04-16 17:09:47

    4번은 당연히 출력이 안됩니다.

    data.statisticsList[i].arrayString


    var arrayString = array[a];

    arrayString은 array[a]의 값을 할당 받은 지역변수 입니다.


    4번의 로그를 출력하고 싶으시면 data.statisticsList[i].array[a] 로 하셔야 합니다.


    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.