1.基于已有对象扩充其属性和方法
2.工厂方式
3.构造函数方式
4.原型(“prototype”)方式
5.动态原型方式 -- 1.基于已有对象扩充其属性和方法
object.name = "zhangsan"
object.sayName = function(name)
{
this.name = name
alert(this.name)
}
object.sayName("lisi") -- 2.工厂方式
function createObject()
{
var object = new Object()
object.username = "zhangsan"
object.password = "123"
object.get = function()
{
alert(this.username + ", " + this.password)
}
return object
}
var object1 = createObject()
var object2 = createObject()
object1.get()
-- 采用带参数的构造方法:
function createObject(username, password)
{
var object = new Object()
object.username = username
object.password = password
object.get = function()
{
alert(this.username + ", " + this.password)
}
return object
}
var object1 = createObject("zhangsan", "123")
object1.get()
代码:
a={val:9,
fc:function(){
alert('1')
}
}
调用a.fc()
原理:
js是弱语言,相对来说语法比较宽松,主要掌握常用的三个对象,函数(function),数组(array或[]定义),对象({}方式定义)。这三者是可以相互组合的,上面也就是一个组合。
比如:var k=[
{m1:'2'},
{m2:function(){}}
]
这个例子就是数组包含对象,对象包含函数。
自定义函数就是说自己写的函数,只有自己调用,或是自己共享给别人后别人才可以调用的。也可以理解为私有函数。
function a(){alert(1)} //定义一个函数,名字是a。函数调用,就是让函数执行。
a() //函数名字后面加一对小括号就可以执行了, 页面中将弹出一个 1