专业编程基础技术教程

网站首页 > 基础教程 正文

js——prototype 属性 js object.prototype

ccvgpt 2024-10-12 14:21:28 基础教程 9 ℃

JavaScript prototype 属性

定义和用法

js——prototype 属性 js object.prototype

prototype 属性允许您向对象添加属性和方法

注意: Prototype 是全局属性,适用于所有的 Javascript 对象。

例1,

var a = function () {
this.v = '1.1.0';
};
a.prototype.aab = function (opt) {
alert('a object_'+opt);
}
new a().aab('5');//增加新方法
a.prototype.aab('6')

例2,

function employee(name,jobtitle){
this.name=name;
this.jobtitle=jobtitle;
}
var fred=new employee("zhangsan","yuangong");
employee.prototype.salary=2000;//增加新salary属性。
document.write(fred.salary);

例3,

Number.prototype.myHalf=function()
{
this.half=this.valueOf()/2;
//return this.valueOf()/2,3;
}

var n = new Number(10);
n.myHalf();//创造一个 Number 对象, 调用 myHalf 方法:
alert( n.half)//数的一半,5

当构造一个属性, 所有的 Number 对象将被添加上该属性及值。

当构造一个方法时,所有的 Number 对象都会有这个方法。

例4,

Array.prototype.myUcase=function()
{
  for (i=0;i<this.length;i++)
  {
  this[i]=this[i].toUpperCase();
  }
  return this;
},
Array.prototype.mySum=function()
{
  var sum=0;
  for (i=0;i<this.length;i++)
  {
  sum+=this[i];
  }
  this.sum=sum;
};
var fruits=["Banana","Orange","Apple","Mango"];
fruits.myUcase();//将数组值转为大写
console.info(fruits);//[ "BANANA", "ORANGE", "APPLE", "MANGO"]
console.info( fruits.myUcase());

var b=[1,2,3,4,5];
b.mySum();
console.info(b.sum);//数组求和

2024-8-5

Tags:

最近发表
标签列表