1208原型
1,原型的作用
通过原型解决数据共享,节省内存空间。每个对象调用同一个方法,这个方法可以用原型来写
2,原型的创建
Person.prototype.eat=function(){}
3.解密原型
var arr=new Array(10,102,102);//arr是实例对象
arr.join("|");
//
4.构造函数,原型对象,实例对象之间的关系
1构造函数可以实例化对象
2构造函数中有一个属性叫prototype,是构造函数的原型对象
3构造函数的原型对象(ptototype)中有一个构造器,指向的是自己所在的原型对象所在的构造函数
4实例对象的原型对象(——proto——),这个绝对是一个实例对象,指向的是该构造函数创建的原型对象
5构造函数的原型对象中的方法是可以被实例对象直接访问的
6实例对象使用的属性或者方法,先从实例对象中找属性,如果没有就到(——proto——)原型对象中找。
5.简单的原型语法
functtion Student(name,age,sex){
this.name=name;
this.age=age;
this.sex=sex;
}
Student.prototype={
constructor:Student,
height:"188",
weight:“55kg”,
study:fucntion(){
console.log("学习好开心啊");
}
eat:function(){console.log("eating fucntion")}
}
var stu=new Student("段飞",20,“男”);
stu.eat();
6.为内置对象的原型对象中添加方法
例如Array,Date,这些都是原型对象里面的方法
1,为Array内置对象设置排序方法
Array.prototype.mySort=function(){
for(var i=0;i<this.length-1;i++){
for(var j=0;j<this.length-1-i;j++){
if(this[j]<this[j+1]){
var temp=this[j];
this[j]=this[j+1];
this[j+1]=temp;
}
}
}
}
7.把局部变量变成全局变量
//函数的自调用---自调用函数,立即执行函数
//一次性的函数--声明的同时,直接调用了,为了安全
(function (){
console.log("函数")
})()
//局部变量
(function (){
var num=10;
console.log("哈哈")
})();
console.log(num);//报错,没有声明是报错,,undefined是声明了为定义