ProgramingTip

TypeError : data.push는 함수가 아닙니다.

bestdevel 2021. 1. 6. 20:55
반응형

TypeError : data.push는 함수가 아닙니다.


나는 밀려 고

data.push({"country": "IN"});

json에 대한 새 ID 및 값으로. 그러나 다음과 같은 오류가 발생합니다.

Uncaught TypeError: data.push is not a function

data{"name":"ananta","age":"15"}

회신 해 주셔서 감사합니다.


배열의 푸시 기능을 사용하려는 경우 var가 배열해야합니다.

data{"name":"ananta","age":"15"}다음으로 변경 :

var data = [
    { 
        "name": "ananta",
        "age": "15",
        "country": "Atlanta"
    }
];

data.push({"name": "Tony Montana", "age": "99"});

data.push({"country": "IN"});

..

포함하는 배열 항목은 객체 유형이며 다음을 수행 할 수 있습니다.

var text = "You are " + data[0]->age + " old and come from " + data[0]->country;

주의 : 일관성을 유지하십시오. 내 예를 들어, 하나의 배열은 개체 속성을 포함 name하고 age다른 하나는 단지 포함하는 동안 country. 나는 반복하는 경우 for또는 forEach내 예를 변화한다는 항목이 포함되어 있기 때문에 나는 항상 하나의 속성에 대해 확인할 수 없습니다.

완벽한 것 : data.push({ "name": "Max", "age": "5", "country": "Anywhere" } );

따라서 속성이 비어 있거나 null이거나 정의되지 않은 경우에도 반복 할 수 있습니다.

편집하다

알아두면 좋은 것들 :

var array = new Array();

와 비슷하다 :

var array = [];

또한 :

var object = new Object();

와 비슷하다 :

var object = {};

다음과 같이 결합 할 수도 있습니다.

var objectArray = [{}, {}, {}];

귀하의 data변수는 객체가 아닌 배열을 포함하고, 개체가없는 push오류가 상태로 기능을합니다. 필요한 작업을 수행하십시오 다음을 수행하십시오.

data.country = 'IN';

또는

data['country'] = 'IN';

또한 변수의 이름이 어떤 종류의 언어 키워드가 아닌지 확인하십시오. 예를 들어 다음은 동일한 유형의 오류를 생성합니다.

var history = [];
history.push("what a mess");

교체 :

var history123 = [];
history123.push("pray for a better language");

예상대로 작동합니다.


객체가 배열 인 경우에만 푸시 메소드를 사용할 수 있습니다.

var data = new Array();
data.push({"country": "IN"}).

또는

data['country'] = "IN"

그냥 사용할 수있는 물건이라면

data.country = "IN";

이 코드를 수집 $ scope.DSRListGrid.data = data; 이것은 소스 데이터 용입니다.

            for (var prop in data[0]) {
                if (data[0].hasOwnProperty(prop)) {
                    $scope.ListColumns.push(
                            {
                                "name": prop,
                                "field": prop,
                                "width": 150,
                                "headerCellClass": 'font-12'
                            }
                    );
                }
            }
            console.log($scope.ListColumns);

은 확인 당신 밀어 에만 배열 로과 같은 오류 인 경우 data.push는 : 캐치 않은 형식 오류되지는 다음의 유형을 확인 **없는 기능 현관 데이터 는이 작업을 수행 할 수 있습니다 consol.log (데이터) 이 의지의 도움 을


설정 한 것 같아요

var data = []; 

하지만 몇 번이 지나면

data = 'some things'; 

그런 다음 data.push('')작동하지 않습니다.

참조 URL : https://stackoverflow.com/questions/29696572/uncaught-typeerror-data-push-is-not-a-function

반응형