将对象中存在的对象转换为NULL值

时间:2016-09-26 19:25:07

标签: javascript angularjs loops object

我有以下对象名称$ scope.parameters。当我执行如下所示的console.log时,我得到了这个结果

console.log($scope.parameters);

结果

Object { Name: "Diana", id: 234, Size: Object, Location: Object, Details: "none" }
Name: "Diana"
id: 234,
Size: Object
Location: Object
Details: "none"

结果显示元素Size和Location as Object,我希望它被替换为null。此外,我希望它是动态的。例如如果以上任何元素都是Object,它应该自动替换为null。

有人可以告诉我如何实现这一目标。

2 个答案:

答案 0 :(得分:1)

如果对象使其为空,则使用其类型测试对象的每个键

if (Object.getPrototypeOf($scope.parameters.Size) === Object.prototype) {
    // True if its object change it to null
    $scope.parameters.Size = null;
} else {
    // do nothing 
}

创建一个带参数的函数来测试它并返回。

答案 1 :(得分:0)

angular.forEach($scope.parameters, function(value, key) {

    if(typeof value === "object"){
    console.log(key);
        $scope.parameters[key] = null;
    }
});