javaScript对象及初识面向对象

1.创建对象

(1)自定义对象  

语法:var 对象名称=new Object();

(2)内置对象  

String(字符串)对象.  

Date(对象)对象 

 Array(数组)对象 

Bollean(逻辑)对象  

Math (算数)对象 

  RegExp对象

//例function an(name,pwd) {  

this.name=name;  

this.pwd=pwd; 

this.show=function () {      

alert("用户名:"+this.name+" 密码:"+this.pwd);

   }

}

var an=new an("name","123");  

  an.show();

2.构造函数

(1)步骤:   创建一个新对象   将构造函数的作用域赋给新对象(this就指向了这个新对象)   执行构造函数中的代码   返回新对象

(2)注意点:   1.构造函数,首字母要大写   2.代码要注意顺序   

Man.prototype=new Humans(); 

//继承

  方法   

Man.prototype.getHead=function(){    

return this.head;  }

3.继承属性  

a.call(b属性,参数);  

b对象替换为a4.原型对象

(1)原型:构造函数在创建出来的时候,系统会默认的给构造函数创建并关联一个空的对象,这个对象就是原型

(2)原型的访问形式: 

1.构造函数.prototype 

2.对象.__proto__   非标准属性,有兼容性问题

(3)原型的使用方式  

1.利用动态特性为原型对象添加属性和方法  

2.直接替换原型对象5.原型链每一个对象都有原型,每一个原型都是对象,每一个原型也都有原型,就形成了链式结构,称为原型链

(1)借用构造函数就是子类型构造函数的内部通过apply()或call()方法调用类型的构造函数

(2)组合继承的思路就是使用原型链实现对原型属性和方法的继承

示例: 

 1 <script type="text/javascript">
 2         function Animal(name, age, color) {
 3             this.name = name;
 4             this.age = age;
 5             this.color = color;
 6         }
 7 
 8         function Poultry(name, age, color, leg) {
 9             Animal.call(this, name, age, color);
10             this.leg = leg;
11         }
12 
13         Poultry.prototype.info = function() {
14             var p = document.createElement("p");
15             var str = "我是一个" + this.color + "的" + this.name + ",我已经" + this.age
16                     + "岁了,我有" + this.leg + "条腿<br/>";
17             p.innerHTML = str;
18             return p;
19         }
20         
21         var body = document.getElementsByTagName("body")[0];
22 
23         var pet1 = new Poultry("小狗狗", 1, "灰色", 4);
24         body.appendChild(pet1.info());
25         var pet2 = new Poultry("茶杯猫", 2, "白色", 4);
26         body.appendChild(pet2.info());
27         var pet3 = new Poultry("小母鸡", 1, "红色", 2);
28         body.appendChild(pet3.info());
29     </script>
原文地址:https://www.cnblogs.com/chx9832/p/10998560.html