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 相关文章推荐
Valerio 发布了 Mootools
Sep 23 Javascript
javascript解析json数据的3种方式
May 08 Javascript
JavaScript charCodeAt方法入门实例(用于取得指定位置字符的Unicode编码)
Oct 17 Javascript
javascript实现单击和双击并存的方法
Dec 13 Javascript
jQuery实现带分组数据的Table表头排序实例分析
Nov 24 Javascript
微信小程序 实例应用(记账)详解
Sep 28 Javascript
详解JS: reduce方法实现 webpack多文件入口
Feb 14 Javascript
vue.js使用v-pre与v-html输出HTML操作示例
Jul 07 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
Sep 14 Javascript
vue配置接口域名方法总结
May 12 Javascript
解决vue-cli webpack打包开启Gzip 报错问题
Jul 24 Javascript
AJAX引擎原理以及XmlHttpRequest对象的axios、fetch区别详解
Apr 09 Javascript
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
用PHP和ACCESS写聊天室(八)
2006/10/09 PHP
smtp邮件发送一例
2006/10/09 PHP
PHP在字符串中查找指定字符串并删除的代码
2008/10/02 PHP
PHP获取photoshop写入图片文字信息的方法
2015/03/31 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
javascript函数库-集合框架
2007/04/27 Javascript
Array.prototype.concat不是通用方法反驳[译]
2012/09/20 Javascript
文本框只能选择数据到文本框禁止手动输入
2013/11/22 Javascript
jQuery实现仿淘宝带有指示条的图片转动切换效果完整实例
2015/03/04 Javascript
Node.js的文件权限及读写flag详解
2016/10/11 Javascript
如何给ss bash 写一个 WEB 端查看流量的页面
2017/03/23 Javascript
vue 2.0封装model组件的方法
2017/08/03 Javascript
Node.js 的模块知识汇总
2017/08/16 Javascript
工作中常用到的ES6语法
2018/09/04 Javascript
详解vue-router传参的两种方式
2018/09/10 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
[01:02:20]Mineski vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python的Flask框架中SQLAlchemy使用时的乱码问题解决
2015/11/07 Python
Python学习之Anaconda的使用与配置方法
2018/01/04 Python
python学习入门细节知识点
2018/03/29 Python
Django uwsgi Nginx 的生产环境部署详解
2019/02/02 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
2019/05/27 Python
Python为何不能用可变对象作为默认参数的值
2019/07/01 Python
python 实现图片上传接口开发 并生成可以访问的图片url
2019/12/18 Python
Python QTimer实现多线程及QSS应用过程解析
2020/07/11 Python
Python爬虫基于lxml解决数据编码乱码问题
2020/07/31 Python
python实现快速文件格式批量转换的方法
2020/10/16 Python
详解Django中异步任务之django-celery
2020/11/05 Python
函授本科毕业自我鉴定
2013/10/09 职场文书
办公室副主任岗位职责
2013/11/25 职场文书
项目考察欢迎辞
2014/01/17 职场文书
新学期教师寄语
2014/04/02 职场文书
质监局领导班子践行群众路线整改方案
2014/10/26 职场文书
慰问信格式
2015/02/14 职场文书
学校标语口号大全
2015/12/26 职场文书
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python