Prototype使用指南之string.js


Posted in Javascript onJanuary 10, 2007

下面介绍Prototype对String对象的扩展部分:

这部分主要为string对象添加了几个很有用的方法:

strip(): 去掉字符串两边的空白, 例如"  jj  ".strip()返回"jj"
stripTags():去掉字符串中的html标签
stripScripts(): 去掉字符串中的javascript代码段
extractScripts(): 返回字符串中的javascript代码,返回数组
evalScripts(): 执行字符串中的javascript代码
escapeHTML():将字符串中的html代码转换为可以直接显示的格式, 例如将< 转化为<,在ie6中有bug,执行这个操作返回的字符串,将多个连在一起的空白变成了一个,所以很多换行什么的都被去掉了
unescapeHTML(): escapeHTML的反向过程
truncate(length, truncation): 截断,例如"abcdefghigkl".truncate(10)返回abcdefg..., truncation默认为"..." toQueryParams(separator)/parseQuery(separator):将一个querystring转化为一个hash表(其实是一个对象,在javascript中对象可以当成hash表来用,因为对象的属性或方法可以通过object[propertyName]来访问)
toArray(): return this.split(''), 转化为一个字符数组
camelize(): 将background-color的形式转化为backgroundColor形式,用在style/css中
capitalize(): 返回一个首字母大写的字符串
inspect(useDoubleQuotes): 返回字符串的表示形式, 例如"sdfj\"sfa".inspect() 返回 “'sdfj"sfa'”
gsub(pattern, replacement):pattern是一个正则表达式,replacement是一个函数(或者是一个template字符串),对于字符串中每个匹配pattern的部分使用replacement处理,然后将replacement返回的值将原来匹配的部分替换掉,例如"skdjfAsfdjkAdk".gsub(/A/,function(match){return match[0].toLowerCase()}), 将字符串所有的A转化为a, 注意pattern中不要添加g选项,因为gsub会递归的执行match方法
sub(pattern, replacement, count) :gsub的另一种形式,不过可以设置执行的次数
scan(pattern, iterator): 跟gsub差不多,但是返回的是字符串本身,也就是说对于pattern中的每个匹配执行iterator,但是不返回替换的字符串"skdjfAsfdjkAdk".gsub(/A/,function(){alert 'have a A'})
underscore(): 'borderBottomWidth'.underscore()  -> 'border_bottom_width'
dasherize(): 'Hello_World'.dasherize()  -> 'Hello-World'
Template模板类:
使用方法:
var template = new Template(replacement, pattern);                
template.evaluate(object) 有点像php中的模板,默认(没有提供pattern)将{propertyName}形式的东西替换了object的属性值

Javascript 相关文章推荐
slice函数的用法 之不错的应用
Dec 29 Javascript
JavaScript定义类的几种方式总结
Jan 06 Javascript
javascript解析xml实现省市县三级联动的方法
Jul 25 Javascript
JQuery.Ajax()的data参数类型实例详解
Nov 20 Javascript
jQuery语法小结(超实用)
Dec 31 Javascript
javascript数据类型验证方法
Dec 31 Javascript
javascript 将共享属性迁移到原型中去的实现方法
Aug 31 Javascript
vue2.0开发实践总结之入门篇
Dec 06 Javascript
CentOS环境中MySQL修改root密码方法
Jan 07 Javascript
浅谈一种让小程序支持JSX语法的新思路
Jun 16 Javascript
vue 修改 data 数据问题并实时显示操作
Sep 07 Javascript
Vue SPA 首屏优化方案
Feb 26 Vue.js
Prototype最新版(1.5 rc2)使用指南(1)
Jan 10 #Javascript
个人总结的一些关于String、Function、Array的属性和用法
Jan 10 #Javascript
[JS源码]超长文章自动分页(客户端版)
Jan 09 #Javascript
Javascript与vbscript数据共享
Jan 09 #Javascript
In Javascript Class, how to call the prototype method.(three method)
Jan 09 #Javascript
js技巧--转义符&quot;\&quot;的妙用
Jan 09 #Javascript
客户端脚本中常常出现的一些问题和调试技巧
Jan 09 #Javascript
You might like
关于session在PHP5的配置文件中的详细设置参数说明
2011/04/20 PHP
Laravel 4 初级教程之安装及入门
2014/10/30 PHP
ThinkPHP中RBAC类的四种用法分析
2014/11/24 PHP
浅析Laravel5中队列的配置及使用
2016/08/04 PHP
PHP SESSION跨页面传递失败解决方案
2020/12/11 PHP
JavaScript中获取元素索引的函数
2010/09/10 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
2010/11/14 Javascript
jQuery 关于伪类选择符的使用说明
2013/04/24 Javascript
将nodejs打包工具整合到鼠标右键的方法
2013/05/11 NodeJs
Extjs4实现两个GridPanel之间数据拖拽功能具体方法
2013/11/21 Javascript
js sort 二维数组排序的用法小结
2014/01/24 Javascript
javascipt:filter过滤介绍及使用
2014/09/10 Javascript
JSON与XML的区别对比及案例应用
2016/11/11 Javascript
浅析Angular2子模块以及异步加载
2017/04/24 Javascript
nodejs读取并去重excel文件
2018/04/22 NodeJs
解决Layui数据表格中checkbox位置不居中的方法
2018/08/15 Javascript
layui表格分页 记录勾选的实例
2019/09/02 Javascript
vue 查看dist文件里的结构(多种方式)
2020/01/17 Javascript
vue.js实现双击放大预览功能
2020/06/23 Javascript
Vue3新特性之在Composition API中使用CSS Modules
2020/07/13 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
[08:40]Navi Vs Newbee
2018/06/07 DOTA
[01:09:01]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第一场 10.28
2020/10/28 DOTA
python实现矩阵乘法的方法
2015/06/28 Python
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
Python实现动态图解析、合成与倒放
2018/01/18 Python
python3连接MySQL数据库实例详解
2018/05/24 Python
flask-restful使用总结
2018/12/04 Python
在python中实现将一张图片剪切成四份的方法
2018/12/05 Python
python关闭占用端口方式
2019/12/17 Python
从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)
2020/08/31 Python
html5使用canvas画一条线
2014/12/15 HTML / CSS
详解HTML5中的manifest缓存使用
2015/09/09 HTML / CSS
求职意向书范文
2014/04/01 职场文书
人力资源部岗位职责
2015/02/11 职场文书
小学主题班会教案
2015/08/17 职场文书