3

学习 JS 是一条坎坷的道路……我想了解我的代码中发生了什么,所以console.log();似乎是我的朋友。

有时我什至不知道错误来自哪里(或者我可能太笨了)所以我想更好地记录我的应用程序堆栈。我试图为这个简单而复杂的问题找到答案:

怎么做?除了与console.log()

例如,获取被调用的函数(构造函数)的名称被证明是有问题的:console.log

function SomeFunction(argument1,argument2) {
    console.log(this+'> 01 message');
    console.log(this.name+'> 02 message');
    console.log(this.constructor+'> 03 message');
    console.log(this.constructor.name+'> 04 message');
    console.log(this.prototype+'> 05 message');
    console.log(this.constructor.method+'> 06 message');
}

SomeFunction.prototype.sayHello = function(} {
    console.log(this+'> 01 says Hello');
    console.log(this.name+'> 02 says Hello');
    console.log(this.constructor+'> 03 says Hello');
    // and so on... //
}

所以。哪一个是正确的?SomeFunction.constructor.name正在工作,但是每次使用这种语法都很长,所以像

var fn = this.constructor.name有道理,但这只是效率低下。

有人可以指出我的良好实践方向,我如何从我的代码中提取正确的日志信息?

仅供参考:我搜索了几本关于这个简单主题的书,没有人对此一言不发。

4

1 回答 1

0

使用开发人员工具(F12,control-I)或获取 firebug,享受单步执行代码、检查和更改变量、编辑 css 的乐趣。它将极大地改善您的 JavaScript 学习体验...

于 2012-07-09T19:49:53.143 回答