天天看点

js中prototype 属性的简单使用

prototype 属性使您有能力向对象添加属性和方法。

例子1:向Array对象中添加获取数组最大值和最大值下标的方法

ArrayMax.js

//获取数组最大值
Array.prototype.getzqlMax= function (){
	var max=this[0];
	var len = this.length;
	for (var i=0;i<this.length;i++) {
		if(this[i]>max){
			max = this[i];
		}
	}
	return max;
}
//获取数组最大值下标
Array.prototype.getzqlMaxSubscript=function (obj){
	
	var i=0;
	for(var j=0;j<this.length;j++){
		if(this[j]==obj){
			i=j;
		}
	}
	return i;
}
           

在Html中引入,并调用

<script src="js/ArrayMax.js"></script>
<body>
<script type="text/javascript">
	var zbwArrs = new Array(12,15,13,14,11);
	var max = zbwArrs.getzqlMax();
	document.write("数组中的最大值为:"+max+"<br />");
	var i =zbwArrs.getzqlMaxSubscript(zbwArrs.getzqlMax());
	document.write("下标:"+i);
</script>
</body>
           

例子2:将字符串转换为数组,道理一样。看代码

//将字符串转换为数组的函数
String.prototype.ArrayStr = function (){
	//新建一个数组
	var a=[];
	var len=this.length;//字符串的长度
	for (var i=0;i<len;i++) {//偶用过循环给数组赋值、添加内容
		a[i]=this.charAt(i);
	}
	//返回这个数组
	return a;
}

//新建一个Html引入,调用
<script src="js/StringArr.js" type="text/javascript" charset="utf-8"></script>
	<body>
		<script type="text/javascript">
			//定义一个数组
			var str="月光光照大床,赤裸裸穿衣裳。"
			//调用刚刚写好的函数,返回一个数组
			var a=str.ArrayStr();
			//循环这个数组,输出
			for (var i=0;i<a.length;i++) {
				document.write(a[i]);
			}
		</script>
	</body>
           

继续阅读