我有2个角度变量定义如下:
$scope.a = {
var1: value1,
var2: value2
};
$scope.b = {
var3: value3,
var4: value4
};
我试图连接var1
和var2
,以便有$scope.c
定义如下:
$scope.c = {
var1: value1,
var2: value2,
var3: value3,
var4: value4
};
我正在做$scope.a = $scope.b + $scope.c
,但它没有给出理想的结果,我得到"[object Object][object Object]"
的价值$scope.c
。
你可以使用Object.assign为此
$scope.c = Object.assign({},$scope.a,$scope.b)
在连接对象时,您可以使用ES6的spread syntax。
$scope.c = {...$scope.a, ...$scope.b};
或者AngularJs的angular.extend()可以让你达到相同的效果。
$scope.c = angular.extend($scope.a, $scope.b);
例如,
const a = {
var1: 'value1',
var2: 'value2'
} ;
const b = {
var3: 'value3',
var4: 'value4'
} ;
console.log({...a, ...b});
您可以查看我制作here的演示。
您可以使用spread运算符合并两个对象
$scope.c={...$scope.a,...$scope.b};
您还可以使用assign方法实现。
$scope.c=Object.assign($scope.a,$scope.b);