수집되지 않은 유형 오류: 데이터.푸시는 기능이 아닙니다.
밀려고 합니다.
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" } );
따라서 빈 속성, 늘 속성 또는 정의되지 않은 속성도 반복하여 가져올 수 있습니다.
편집하다
유용한 정보:
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";
로 설정하신 것 같습니다.
var data = [];
하지만 시간이 좀 흐른 후, 당신은 이렇게 만들었어요.
data = 'some thing which is not an array';
그리고나서data.push('')
는 어레이가 아니기 때문에 동작하지 않습니다.
푸시 작업만 기억해야 할 한 가지 사항array[]
것은 아니다.object{}
.
개체를 추가할 경우o
안쪽에서n
다음과 같이 합니다.
a = {
b:"c",
D:"e",
F: {
g:"h",
I:"j",
k: {
l:"m"
}
}
}
a.F.k.n = { o: "p" };
console.log(a);
이 코드 $scope를 사용해 보십시오.DSRListGrid.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);
어레이에만 푸시하여 Uncaughed TypeError: data와 같은 오류인지 확인하십시오.push는 함수가 아닙니다**. console.log(data)에서 실행할 수 있는 데이터 유형을 확인합니다.
dataArray = [{'id':1', 'code':']을(를) 둡니다.ABC',{'id':1','code':'ABC', {'id':2, 'code':'ABC'}]
let obj = {};
dataArray.forEach(task => {
task.id in obj ? obj[task.employee_id].push(task):
obj = {
...obj,
[task.employee_id]: [task],
}
});
언급URL : https://stackoverflow.com/questions/29696572/uncaught-typeerror-data-push-is-not-a-function
'programing' 카테고리의 다른 글
모델을 통해 입력 자리 표시자 값을 변경하시겠습니까? (0) | 2023.04.05 |
---|---|
인증 및 세션 관리의 SPA 베스트프랙티스 (0) | 2023.04.05 |
저장 후 Mongoose 입력 (0) | 2023.04.05 |
google-services.json의 실제 역할은 무엇입니까? (0) | 2023.03.31 |
MS SQL에 wordpress를 설치하는 방법 (0) | 2023.03.31 |