JS中的String对象的方法和获取原型方法+自定义方法
2015-07-06 23:51
766 查看
<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编程中的原型概念
- JavaScript中的原型和继承详解(图文)
- Javascript 原型和继承(Prototypes and Inheritance)
- 深入理解JavaScript系列(6) 强大的原型和原型链
- 前端开发必须知道的JS之原型和继承
- JavaScript利用构造函数和原型的方式模拟C#类的功能
- javascript当中的代码嗅探扩展原生对象和原型(prototype)
- javascript学习笔记(五)原型和原型链详解
- javascript学习笔记(九)javascript中的原型(prototype)及原型链的继承方式
- JavaScript中原型和原型链详解
- js原型继承的两种方法对比介绍
- JavaScript 面向对象与原型
- 简单分析javascript面向对象与原型
- 理解JavaScript原型
- JavaScript的原型及原型链
- JavaScript模拟Java类继承
- js ==、!=、===、!== 的区别
- Android WebView 中 addJavascriptInterface 接口无效问题
- erase函数