JS中的String对象的方法和获取原型方法+自定义方法

原创 2015年07月06日 23:51:29
    <script type="text/javascript">
        var str="abcde";//var str=new String("abcde");
        str.length //字符串的长度
        str.bold();//给字体加粗相当于<b>abcde</b>
        str.fontcolor("red") //给字体加颜色
        str.link("http://www.163.com");//使字体变成超链接
        str.substr(1,3);//一个从指定位置开始的指定长度的子字符串
        str.substring(1,3);//方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。

    </script>
    <script type="text/javascript">
    /*
    * 发现js中的string对象方法有限,想要对字符串操作的其他功能。
    * 比如:去除字符串两端的空格。这时只能自定义。
    */
    //去除字符串两端的空格。
    function trim(str){
    //定义两个变量,一个记录开始的位置。一个记录结束的位置。
    //对开始的位置 的字符进行判断,如果是空格,就进行递增,直到不是空格为止。
    //对结束的位置 的字符进行判断,如果是空格,就进行递减,直到不是空格为止。
    //必须要保证开始<=结束,这样才可以进行截取。
    var start,end;
    start=0;
    end=str.length-1;
    while(start<=end && str.charAt(start)==' '){
        start++;
    }
    while(start<=end && str.charAt(end)==" "){
        end--;
    }
    return str.substring(start,end+1);
    }
    </script>

既然trim方法是用来操作字符串的方法,可不可以像字符串已有的方法一样,
将该方法也定义到字符串对象中呢?直接用字符串对象调用。
这里就可以使用一个该字符串的原型属性来完成:
原型:就是该对象的一个描述。该描述中如果添加了新功能。
那么该对象都会具备这些新功能。
而prototype就可以获取到这个原型对象。
通过prototype就可以对对象的功能进行扩展。

需求:想要给string对象添加一个可以去除字符串两端空格的新功能.
就可以使用原型属性来完成。

String.prototype.trim = function(){
var start,end;
start=0;
end=this.length-1;
while(start<=end && this.charAt(start)==' '){
start++;
}
while(start<=end && this.charAt(end)==" "){
end--;
}
return this.substring(start,end+1);
}


//在调用的时候就可以
var  s="sdasd";
s.trim();

/给string的原型中添加一个功能。 注意:给对象添加新功能直接使用 对象.新内容 即可。
// String.prototype.len = 199;//给string的原型对象中添加一个属性 名为len。 值为199.

JavaScript中String对象常见方法及属性

JavaScript String对象简介在JavaScript,基本数据类型有Number型、String型、Boolean型、Undefined型、Null型、Function型等。String对...
  • a153375250
  • a153375250
  • 2016年03月30日 12:57
  • 2024

js操作string之substr方法

js操作string之substr方法
  • UP19910522
  • UP19910522
  • 2014年05月09日 22:15
  • 793

JavaScript函数的两种主要调用模式以及原型方法等

1)方法调用模式当一个函数作为method绑定到一个对象时,这个function如果作为属性被调用是方法调用模式。方法调用传递this为该对象,所以方法可以通过this来访问对象的属性或者变量。2)函...
  • brainwkernighan
  • brainwkernighan
  • 2010年10月20日 16:59
  • 1563

自定义JS 字符串操作函数

String.prototype.LTrim = function() { return this.replace(/(^\s*)/g, ""); } String.prototype...
  • zsf8701
  • zsf8701
  • 2012年08月09日 14:05
  • 7721

深度理解JS对象及原型

对象概述 1.JavaScript中,除了string,number,boolean,null,undefined,其他数据都是对象,甚至包括数组、日期和函数。 2.ECMA-262定义:对象是属性的...
  • sinat_30975247
  • sinat_30975247
  • 2015年11月15日 18:53
  • 3254

js中string的常见操作

创建一个String 对象,语法:new String(stringValue),这个调用会将参数转换为字符串,并作为一个String 对象。事实上任何一个字符串常量都是一个String对象,可以将其...
  • kollyQAQ
  • kollyQAQ
  • 2016年04月11日 09:55
  • 2265

JS中的String对象的方法和获取原型方法+自定义方法

var str="abcde";//var str=new String("abcde"); str.length //字符串的长度 str.bold...
  • xdd_lmd
  • xdd_lmd
  • 2015年07月06日 23:51
  • 1282

js的String对象方法

1、toLowerCase(): 把字符串转为小写,返回新的字符串。var str="Hello World"; var str1=str.toLowerCase(); console.log(str...
  • LLL_liuhui
  • LLL_liuhui
  • 2018年01月20日 09:33
  • 22

对象的创建、使用及向String对象添加方法(prototype的使用)

prototype 属性使您有能力向对象添加属性和方法。 语法 object.prototype.name=value //对象的定义,使用(名片示例) function ...
  • u013806814
  • u013806814
  • 2015年09月23日 22:26
  • 615

js 对象方法、类方法、原型方法区别

[javascript] view plain copy function People(name)  {  this.name=name;  //对象方法  this.Intro...
  • songmaolin_csdn
  • songmaolin_csdn
  • 2016年10月19日 17:15
  • 1855
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JS中的String对象的方法和获取原型方法+自定义方法
举报原因:
原因补充:

(最多只允许输入30个字)