console.log()是我们常用的调试方法,一般用于打印原始值或引用值。
下文只是猜测,若有错误之处,还望指正。
函数
/**
* 在外部通过点语法添加
*/
var Animal = function () {};
Animal.say = function () {
console.log("hi");
};
console.log(Animal);
console.log()打印结果为函数的源代码:
console.dir()打印结果为函数的全部内容:
- log打印函数时,调用了Function.toString(),即函数形式。
Function对象覆盖了从object继承来的Object.prototype.tostring方法,函数的tosting方法会返回一个表示函数源代码的字符串。具体来说,包括 function关键字,形参列表,大括号,以及函数体中的内容。
- dir打印函数对象时,打印的是对象形式
将一个JavaScript对象的所有属性和属性值显示成一个可交互的列表。
注意:
在js中函数也是对象,所有通过点语法给函数添加属性或方法,都会以键值对的方式被添加的这个函数中。
对象
var Person = {};
Person.say = function () {
console.log("hi");
};
console.log(Person);
log结果:
调用valueOf()结果