js中没有提供类(class,抽象类,接口等高级的抽象),可以用new,但new的function的对象,构造器
但在js中可以通过function来模拟类的一些特性
function fun_name(参数列表){body}
另一种类似变量
var func = function(参数列表){body}
第一种方式声明的函数可以在声明之前的代码中调用的,后一种方式不行,
js还有其他一些属性,call() apply() callee() caller() this,prototype,constructor,arguments等
js的对象比较特别,是属性和方法的集合,其次,这个集合实例化后,还可以动态发生变化,对象是基于原型 prototype,这点在对象属性和方法的查找方式上最明显,(属性在对象实例上查找,如果没找到就在原型找,同一类的实例公用一个原型对象)
js创建一个对象的方式是多样的,new操作和json方式是常见和最基本的