Получаю ошибку: Error: missing ; before statement
Не работает вот такая вот запись?:
str = '{id: 4,image: "path",dessert: "text",calories: 100,fat: 10,comments: "comment"}'; $scope.dataTableTbody.push(eval(str)); Массив js-объектов: $scope.dataTableTbody = [ { id: 11, image: '/images/placeholder/1-square.jpg', dessert: 'Frozen yogurt', calories: 159, fat: 6.0, comments: 'Lorem ipsum' }, { id: 13, image: '/images/placeholder/3-square.jpg', dessert: 'Eclair', calories: 262, fat: 16.0, comments: 'Lorem ipsum' }]; А вот если делаю так: $scope.dataTableTbody.push(eval('[' + str + ']')); то объект добавляется в массив, но в таком виде: Array [ Object, Object, Object, Array[1] ] где в Array[1] соответственно содержится наш Object Нужно сделать, чтобы $scope.dataTableTbody в итоге был таким: Array [ Object, Object, Object, Object ] |
$scope.dataTableTbody.push(eval('...[' + str + ']')); |
Цитата:
сделал таким образом, всё заработало: $scope.dataTableTbody = $scope.dataTableTbody.concat( eval('[' + str + ']') ); |
okuznetsov1,
Вот так точнее. $scope.dataTableTbody.push(...eval('[' + str + ']')); Spread оператор. |
Цитата:
|
Часовой пояс GMT +3, время: 09:50. |