【问题标题】:AngularJS log JSONAngularJS 日志 JSON
【发布时间】:2013-09-05 08:21:49
【问题描述】:

有没有办法输出来自服务器的 JSON 响应?我正在尝试以下操作,但输出不理想:

$http({ method: 'GET', url: 'getUser' })
        .success(function (data,status) {
            $scope.user = data;
            console.log("User="+data);})
        .error(function (data,status) {
            $scope.status = status;
            if(status==403)
                $location.path( "/" );
        });

输出:

User=[object Object] 

【问题讨论】:

    标签: json angularjs logging


    【解决方案1】:

    您可以在打印前stringify它。

    console.log("User = " + JSON.stringify(data));
    

    【讨论】:

      【解决方案2】:

      如果您不想添加新的依赖项,也可以使用angular.toJson()

      $log.debug(angular.toJson(data, true));
      

      Reference

      【讨论】:

      • FAR 的最佳答案!
      【解决方案3】:

      根据您的浏览器,log 函数可以采用多个参数。例如,Chrome 就支持这个:

      console.log("User = ", data);
      

      执行此操作时,data 会显示在对象浏览器中,您可以在其中显示/折叠层次结构。它非常有用。由于我在 Chrome 中开发,我非常喜欢这种方法(超过 JSON.stringify),因为它打字更少,调试体验更好。

      如果您在不支持此语法的浏览器中进行调试,那么JSON.stringify 可能是您最好的选择。

      【讨论】:

      • 虽然 JSON.stringify(val) 不会对任何数据类型抛出任何错误,但这比接受的答案要容易得多。
      【解决方案4】:

      console.dir(object) 是您正在寻找的。它现在在所有浏览器 (IE9+) 中得到广泛支持。输出可以查看here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多