我应该在JavaScript应用程序中保留控制台语句吗
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了我应该在JavaScript应用程序中保留控制台语句吗,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1939字,纯文字阅读大概需要3分钟。
内容图文
![我应该在JavaScript应用程序中保留控制台语句吗](/upload/InfoBanner/zyjiaocheng/795/87ed6f5c9990473f904d9e30d8dc68a2.jpg)
我在我的780行代码JS脚本中的3个位置使用console.log()和console.dir()语句.但是所有这些对于调试和发现使用应用程序时可能出现的问题都很有用.
我有一个函数打印内部应用程序的状态,即变量的当前值:
printData: function () {
var props = {
operation: this.operation,
operand: this.operand,
operandStr: this.operandStr,
memory: this.memory,
result: this.result,
digitsField: this.digitsField,
dgField: this.dgField,
operationField: this.operationField,
opField: this.opField
};
console.dir(props);
}
我还有一个不可变的“容器”列表,它们隐藏了闭包但我可以使用名为list()的访问器方法打印它们;在控制台.
像这样的东西:
list: function () {
var index = 0,
newStr = "",
constant = '';
for (constant in constants) {
if (constants.hasOwnProperty(constant)) {
index = constant.indexOf('_');
newStr = constant.substr(index + 1);
console.log(newStr + ": " + constants[constant]);
}
}
}
我在调试时使用控制台的第三个地方是我的init();函数,如果它发生,我打印异常错误.
init: function (config) {
try {
this.memoryLabelField = global.getElementById(MEMORY_LABEL);
this.digitsField = global.getElementById(DIGITS_FIELD);
this.digitsField.value = '0';
this.operationField = global.getElementById(OPERATION_FIELD);
this.operationField.value = '';
return this;
} catch (error) {
console.log(error.message);
return error.message;
}
}
正如我的问题所述,我应该将这些控制台语句保留在生产代码中吗?
但它们对于以后维护代码非常有用.
让我知道你的想法.
解决方法:
由于这些不是持久性日志,因此不会从中获益.它也运行在每台个人机器上,因为每个人都有自己的程序副本.如果你真的需要它,最好有一个可以切换这个功能的变量.特别是如果你的目标是调试大量预先确定的东西.
客户端问题需要调试与服务器端略有不同.每个人都有自己的程序副本. Browser-JS在客户端运行,你打开浏览器,你编写的所有代码都是在一个完整的代表中调用,与服务器端相比,调试很容易,因为很可能你无法访问该系统.它非常灵活,您可以直接在自己的浏览器中检查生产中的内容时覆盖它,而不会影响任何人.只需使用这些控制台语句覆盖它并调试问题.
在服务器端编程中登录是一个好主意.它提供了许多有用的信息并且是持久的.
内容总结
以上是互联网集市为您收集整理的我应该在JavaScript应用程序中保留控制台语句吗全部内容,希望文章能够帮你解决我应该在JavaScript应用程序中保留控制台语句吗所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。