在javascript中的对象
第一种是直接创建一个新的空对象,然后通过对象给它的属性赋值
用分号隔开
<script> /*创建一个新的对象,然后赋值*/ var person = new Object(); person.name = "张三" person.pwd = 123; person.age = 23; person.show = function shownName(){ alert(this.name) } person.show();
第二种是直接用字面量赋值的方式来进行创建,其中用逗号隔开
/*第二种创建方式*/ var person = { name:"张三"
pwd:123, age:23,show: function showName(){ alert( this. name) } } person. show() </ script>
数组Array 的concat()
构造函数
/*构造函数*/ function Person( name ,age ,pwd){ this.name = name; this.age = age ; this.pwd = pwd; this.show= function showInfo(){ document.write(this.name+"<br/>"+this.age+"<br/>"+this.pwd) } } var person = new Person("jing",23,"12345") person.show(); var person1 = new Person("jing",23,"12345") person1.show();
Constructor比较上下级关系(严格)
alert(person.constructor==Person) true
alert(person.constructor==Object) false
instanceof 比较上下级关系
alert( person. instanceof==Person) true
alert( person. instanceof==Object) true
原型模式生产prototype(实现数据的共享)
<script> /*实现数据的共享,不用模型的话,每个对象都是新的实例对象, 但有了原型模式以后,每个对象都是共享的同一个原型对象*/ function Person(){ } Person.prototype.name = "张三" Person.prototype.age = 23 Person.prototype.pwd = "12345" Person.prototype.show = function (){ /*这两种写法都是一样的*/ /* alert(this.name)*/ alert(Person.prototype.name) } var person = new Person(); person.show(); var person1 = new Person() person1.show();
//这里提示值是true,说明他们共享的是同一个对象 alert(person.show==person1.show) </script>