收集了我们团队部分常用的方法,我稍微进行了一下整理,贴出来和大家分享。
先从String的扩展开始吧,后面有一部分的扩展要依赖这里扩展的方法。为了更加清晰和详细,我会一个方法一个方法地贴出来,你完全可以把所有的方法合并在一起。
方法:startsWith
说明:这个方法可以判断字符串是不是以指定的字符串开头。
String.implement({
startsWith: function(s) {
///<summary>
/// 检查一个字符串是不是以某个字符串开头
///</summary>
///<param name="s" type="String">开始字符串</param>
///<returns type="BOOLEAN" />
return (this.indexOf(s) == 0);
}
}
简单示例:
// 下面将返回true
var a = 'here is a test string'.startsWith('here');
// 下面将返回false
var b = 'here is a test string'.startsWith('hereis');
方法:truncate
说明:这个方法会截取指定长度的字符串,一个中文字符将按照2个字符长度计算。
String.implement({
truncate: function(len, ae) {
///<summary>
/// 按指定长度截取字符串
/// 可以选择在截取字符串的后面添加或者不添加省略号(三个点)
///</summary>
///<param name="len" type="Number">要截取的字符串长度</param>
///<param name="ae" type="Boolean">true添加省略号,false不添加</param>
///<returns type="STRING" />
var tl = 0, ts = [];
var tt = this.length;
for (var i = 0; i < tt; i++) {
if (this.charCodeAt(i) > 255) {
tl += 2;
}
else {
tl++;
}
if (tl > len) {
break;
}
}
return (ae && i < tt) ? this.substring(0, i) + '...' : this.substring(0, i);
}
}
简单示例:
// 下面将返回 'here is a '
var a = 'here is a test string'.truncate('10');
// 下面将返回 'here is a ...'
var b = 'here is a test string'.truncate('10', true);
方法:escapseHTML
说明:对字符串中的HTML代码进行转义。
String.implement({
escapseHTML: function() {
///<summary>
/// 对字符中的HTML代码进行转义
///</summary>
///<returns type="STRING" />
var htmlChars = ['&~&', '<~<', '>~>'];
var r;
var s = this;
for (var i = 0; i < htmlChars.length; i++) {
r = htmlChars[i].split('~');
s = s.replace(new RegExp(r[0], 'g'), r[1]);
}
return s;
}
}
您可能对这些文章也感兴趣:- Mootools 1.2教程(7)——设置和获取样式表属性
- Mootools 1.2教程(12)——用Drag.Move实现拖拽和拖放
- 不只是MooTools的问题,瑞星已成流氓了
- [翻译]jQuery和MooTools的真正区别(下)
- Silverlight 2.0 RTW发布,等写完MooTools文档开始玩
- Mootools 1.2教程(18)——类(一)
- Mootools 1.2教程(4)——函数
- Mootools一个小bug
- Mootools 1.2教程(9)——输入过滤第二部分(字符串)
- Mootools 1.2教程(17)——手风琴插件
与该文相关的评论:(我也想说几句)
Copyright © 2005-2008,Fdream All Rights Reserved
Processed in 0.0937512 second(s) , unknow queries
Powered by OWord V0.1, Even Not Alpha
(此博客程序为半成品,请勿索取,以免给您的心灵造成创伤^_^)
鄂ICP备05026031号
Processed in 0.0937512 second(s) , unknow queries
Powered by OWord V0.1, Even Not Alpha
(此博客程序为半成品,请勿索取,以免给您的心灵造成创伤^_^)
鄂ICP备05026031号
2009-1
我来说两句:
用户中心
日志分类

最新日志
统计信息





