javascript - 在 AngularJS 中,console.log 和 $log.info 有什么区别?

标签 javascript angularjs

我已经看到两者都被使用过,并且我没有看到它们的输出有任何差异。除了 console.log 不需要注入(inject) $log 之外,两者相比还有什么优势吗?

var url = "http://www.google.com";
console.log(url);
$log.info(url);

这两个语句都将字符串返回到控制台窗口。如果 url 是一个对象,则两者都会将该对象的属性返回到控制台窗口。

最佳答案

ng.$log 服务的主要目的是让您拥有稳定的实现(跨浏览器/节点的可用性没有差异),因此您可以使用 关闭所有调试输出$logProvider(例如在生产构建中或在单元测试期间)。还可以想象您注入(inject)一个替代记录器实现,它将您的日志发送到聚合服务或类似的东西。默认的 $log 服务的行为与 console 完全相同。

基本上:console.log ==硬编码函数,$log ==可重写服务

关于javascript - 在 AngularJS 中,console.log 和 $log.info 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50487340/

相关文章:

angularjs - 使用 Angular Material 可以做些什么来改善 IE11 的行为?

javascript - 根据弹出窗口 JavaScript 的返回值更改 ASP.NET 面板可见性

javascript - 如何从div获取内部id/class?

javascript - 如何导出 index.js 中的所有组件?

angularjs - 如何使用cordova angularjs获取设备的语言?

angularjs - attr.$observe 必需的指令

javascript - 将一个数组作为参数进行排序

php - AJAX:打开另一个div中的内容

javascript - 从没有ng-bind-html的angularjs过滤器输出HTML?

javascript - AngularJS:在指令中使用 JS 函数 - 不好的做法?