关于javascript的String对象的属性

construcor属性:

   	var str=new String("abcdefd");
    	println(typeof(str));
    	println(String==str.constructor);////Java的写法: str instanceof String
    

prototype属性的引例:为String对象添加一个trim()方法

/*
    	javascript基于对象,用原型克隆出对象(obj.prototype)
    	java,面向对象--用类描述对象,内模板或对象
    	
    	  */
//通过对象String的prototype属性可以把它添加变量和方法--其原型对象(已创建)会有,其所有的克隆体也会有

给String对象写一个trim()函数

 	//通过对象String的prototype属性可以把它添加变量和方法--其原型对象(已创建)会有,其所有的克隆体也会有
    	//添加变量
    	String.prototype.ab=100;//加名为ab的属性,类似在java的类模板中添加变量
    	 println("ab:"+ "abc".ab);
	     String.prototype.x=3.14;
	     println("x:"+"aa".x);
    	///添加方法格式
    	/*function aa(){
    		方法体
    	} 
    	
    	String.prototype.aa=aa;//把一个函数引用赋值给原型对象
    	
    	函数的匿名方式添加:
    	String.prototype.aa=function(){
    		方法体;//那上面的静态方法,将所有的str变成this,调用时直接this.aa()
    	}
    	 */
    	 
    	////////////静态函数方法trim()///////////
    	function trim(str){
    		var start=0;
    		var end=str.length-1;
    		while(start<=end&&str.charAt(start)==' ')
    			start++;
    		while(start<=end&&str.charAt(end)==' ')
    			end--;
    		return str.substring(start,end+1);	
    	}
    	var str = "  abc 123a    ";
    	println(trim(str));
    	
    	//把trim()融入到String对象
    	String.prototype.trim=function(){
				var start=0;
				var end=this.length-1;
				while(start<=end&&this.charAt(start)==' ')
					start++;
				while(start<=end&&this.charAt(end)==' ')
					end--;
				return this.substring(start,end+1);	
		}
    	println(str.trim());
    	//※也把trim方法融入到String对象中: str.trim()---代码已经移植到tools.js中了
 

给String对象添加一个toCharArray()方法
//给String对象添加一个toCharArray()方法
   		String.prototype.toCharArray=function(){
   			var cha=[];
   			for(var x=0;x<this.length;x++){
   				cha[x]=this.charAt(x);
   			}
   			return cha;
   		}
   		var str="abcdef";
   		println(str.toCharArray());
给String对象写一个reverse()方法(回转)
//给String对象写一个reverse()方法(回转)
   		String.prototype.reverse=function(){
   			var arr=this.toCharArray();
   			for(var start=0,end=arr.length-1;start<end;start++,end--){
   				var temp;
   				temp=arr[start];
   				this.arr[start]=arr[end];
   			}
   			return arr.join("");
   		}
   		
   		var arr=[12,3,34,23,21,34,21];
   		println(arr.reverse());



猜你喜欢

转载自blog.csdn.net/e286878553/article/details/80778617