function fn() {
var value
this.name = 'Tom'
this.age = '20'
return value
}
var a = fn()
var b = new fn()
构造函数:
new fn()
的形式声明- 没有显示声明返回值或返回类型为5种基本数据类型
value = undefined
,默认返回构造函数本身 - 函数内部
this
默认指向实例 - 函数内部会默认创建一个新的对象
__proto__
- 构造函数通常首字母大写
普通函数
- 无需添加
new
关键字的声明方式 - 默认返回一种基础数据类型
undefined
,反之由return
语句决定 - 函数内部
this
指向调用函数的对象,一般情况下指向全局对象window
- 函数内部不会创建一个新的对象
- 普通函数命名还是遵照小驼峰命名