当前位置 : 主页 > 手机开发 > harmonyos >

JScript中prototype属性应用讲解

来源:互联网 收集:自由互联 发布时间:2023-10-08
prototype 属性 返回对象类型原型的引用。 objectName .prototype objectName 参数是对象的名称。 说明 用 prototype Array 对象添加返回数组中最大元素值的方法。 要完成这一点,声明该函数,将它


prototype 属性

返回对象类型原型的引用。

objectName.prototype

objectName 参数是对象的名称。

说明

用 prototype

Array 对象添加返回数组中最大元素值的方法。 要完成这一点,声明该函数,将它加入 Array.prototype, 并使用它。

第一种写法:

function array_max( ){
   var i, max = this[0];
   for (i = 1; i < this.length; i++)
   {
   if (max < this[i])
   max = this[i];
   }
   return max;
}
Array.prototype.max = array_max;

prototype.max = array_max;

第二种写法:
Array.prototype.max =function( ){
 var i, max = this[0];  
 for (i = 1; i < this.length; i++)  
 {
   if (max < this[i])max = this[i]; 
 }  
 return max;
}
var x = new Array(1, 2, 3, 4, 5, 6);

var y = x.max( );
alert(y) //返回6



另外几个例子如下:

//日期格式格式化,本例的toString重写了原来的Date对象的toString方法。
//特别注意这个例子,它是重写了原有的一个Date对象的方法。
Date.prototype.toString=function(){
  //获得yy-mm-dd hh-mm-ss这样的格式
  //alert(new Date());
 var date = this;
 var year = date.getFullYear();
 var month = date.getMonth()+1;
 var day  = date.getDate();
 var hours = date.getHours();
 var minutes = date.getMinutes();
 var seconds = date.getSeconds();
 function _f(n){
  if(n<10)
   n = "0"+n;
  return n;
 }
 return year+"-"+_f(month)+"-"+_f(day)+" "+_f(hours)+":"+_f(minutes)+":"+_f(seconds);
}


//计算到今天为止经过了多少天
Date.prototype.daysPassed=function(){
    var date=this;
 if(!(date instanceof Date))
  throw new Error(-1,"错误的参数类型,参数date必须是Date对象的实例。");
 var min  = 1000*60;
 var hour = min*60;
 var day  = hour*24;
 return Math.round(((new Date())-(date))/day);
}

//将当前的数字转换成16进制
Number.prototype.toHex=function(){
 var hexStr = "0123456789ABCDEF";
 var low = this % 16;
 var high = (this - low)/16;
 hex = "" + hexStr.charAt(high) + hexStr.charAt(low);
 return hex;
}

//判断当前串是否已制定的串结尾
String.prototype.endWith=function(str){
 if("string"!=typeof(str))
  throw new Error(-1,"/""+str+"/" 不是一个字符串。");
 return (this.substring(this.length-str.length,this.length)==str);
}

//判断当前串是否已制定的串开头
String.prototype.startWith=function(str){
 if("string"!=typeof(str))
  throw new Error(-1,"/""+str+"/" 不是一个字符串。");
 return (this.substring(0,str.length)==str);
}

//过滤两侧字符串的空格
String.prototype.trim = function() 
{ 
return this.replace(/(^/s*)|(/s*$)/g, ""); 
} 

//过滤两侧字符串左侧的空格
String.prototype.trim = function() 
{ 
return this.replace(/(^/s*)/g, ""); 
} 

//过滤两侧字符串右侧的空格
String.prototype.trim = function() 
{ 
return this.replace(/(/s*$)/g, ""); 
} 

//给String添加一个方法名字为len,计算字符串的字节长度
String.prototype.len=function()
{
    return this.replace(/[^/x00-/xff]/g,"**").length;
}
【文章转自台湾大带宽服务器 http://www.558idc.com/tw.html提供,感恩】
上一篇:在一个js文件中包含另一个js文件的方法
下一篇:没有了
网友评论