JavaScript函数备份(大部分参考EXT2.0.2)
来源:互联网 发布:数据库系统概论(第5版) 编辑:程序博客网 时间:2024/06/15 09:16
这里面只列出JavaScript中没有的函数。
现在就不作解释了,主要看代码吧。
不使用原型编写的代码:
/** * <pre> * 截取一个字符串,若它超过指定的长度,并在其后面增加一个省略号('...') * </pre> * @param value 需要截取的字符串 * @param len 允许截取的最大长度 * @returns 返回转换后的字符串 */function ellipsis(value, len){if(value && value.length > len){ return value.substr(0, len-3)+"..."; } return value;}/** * <pre> * 判断一个字符串是否为日期类型 * </pre> * @param value 字符串 * @returns {Boolean} 是返回true,否返回false */function isDate(value){return value && typeof value.getFullYear == 'function';}/** * <pre> * 把日期字符串格式化 * </pre> * @param value 日期字符串(不支持格式:2010.12.23) * @param format 格式:默认为:yyyy-MM-dd * @returns 返回格式化后的字符串 */function date(value, format){if(!value){return "";}if(!isDate(value)){value = new Date(Date.parse(value));}return value.dateFormat(format || "yyyy-MM-dd");}/** * <pre> * 简单格式一个文件大小(xxx bytes, xxx KB, xxx MB, xxxGB). * </pre> * @param size 文件大小的数字 * @return 格式后字符串 */function fileSize(size){if(size < 1024) { return size + " bytes"; } else if(size < 1048576) { return (Math.round(((size*10) / 1024))/10) + " KB"; } else if(size < 1073741824){ return (Math.round(((size*10) / 1048576))/10) + " MB"; } else if(size < 1099511627776){ return (Math.round(((size*10) / 1073741824))/10) + " GB"; } else { return (Math.round(((size*10) / 1099511627776))/10) + " TB"; }}/** * <pre> * 在字符串前面补一个特殊的字符,这在数字和日期字符串中非常好用。 * String val = leftPad("123", 5, "0"); * val就变成了 "00123" * * </pre> * @param str 原始字符串 * @param size 输出字符串的总长度 * @param ch 它是加在原始字符串前的字符,默认为" "; * @returns 返回填补后的字符串 */function leftPad(str,size,ch){var s = new String(str);if(!ch){ch = " ";}while(s.length < size){s = ch + s;}return s.toString();}/** * <pre> * 字符串去前后空格 * </pre> * @param str 原始字符串 * @returns 去空格后字符串 */function trim(str){var pattern = /^\s+|\s+$/g;return str.replace(pattern,"");}/** * <pre> * 字符串去前空格 * </pre> * @param str 原始字符串 * @returns 去空格后字符串 */function leftTrim(str){var pattern = /^\s+/g;return str.replace(pattern,"");}/** * <pre> * 字符串去后空格 * </pre> * @param str 原始字符串 * @returns 去空格后字符串 */function rightTrim(str){var pattern = /\s+$/g;return str.replace(pattern,"");}
使用原型写的代码:
/** * <pre> * 把日期格式化 * y:年 * M:月 * d:日 * h:小时 * m:分 * s:秒 * q:刻 * S:毫秒 * </pre> * @param format 格式 * @returns 返回格式化后的字符串 */Date.prototype.dateFormat = function(format) {var o = {"M+" : this.getMonth() + 1, // month"d+" : this.getDate(), // day"h+" : this.getHours(), // hour"m+" : this.getMinutes(), // minute"s+" : this.getSeconds(), // second"q+" : Math.floor((this.getMonth() + 3) / 3), // quarter"S" : this.getMilliseconds()// millisecond};if (/(y+)/.test(format)){format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));}for ( var k in o){if (new RegExp("(" + k + ")").test(format)){format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));}}return format;};
/** * copyRight xxx * <pre> * 使用原型实现,其中大部分代码参考了Ext2.0.2版本的代码, * 或者直接引用了其代码 * </pre> * author:pansen * version:v1.0 * *//** * <pre> * 使用String的prototype的形式,即可以使用"aa".ellipsis(20); * 截取一个字符串,若它超过指定的长度,并在其后面增加一个省略号('...') * </pre> * @param len 允许截取的最大长度 * @returns 返回转换后的字符串 */String.prototype.ellipsis=function(len){if(this && this.length > len){return this.substring(0, len-3)+"...";}return this;};/** * <pre> * 把日期字符串格式化 * 日期字符串(不支持格式:2010.12.23) * </pre> * @param format 格式:默认为:yyyy-MM-dd * @returns 返回格式化后的字符串 */String.prototype.date = function(format){var str = this;if(!str){return "";}if(!isDate(str)){str = new Date(Date.parse(str));}return str.dateFormat(format || "yyyy-MM-dd");};/** * <pre> * 在字符串前面补一个特殊的字符,这在数字和日期字符串中非常好用。 * String val = "123".leftPad(5, "0"); * val就变成了 "00123" * * </pre> * @param size 输出字符串的总长度 * @param ch 它是加在原始字符串前的字符,默认为" "; * @returns 返回填补后的字符串 */String.prototype.leftPad=function(size,ch){var s = this;if(!ch){ch = " ";}while(s.length < size){s = ch + s;}return s;};/** * <pre> * 字符串去前后空格 * </pre> * @returns 去空格后字符串 */String.prototype.trim = function(){var pattern = /^\s+|\s+$/g;return this.replace(pattern,"");};/** * <pre> * 字符串去前空格 * </pre> * @returns 去空格后字符串 */String.prototype.leftTrim = function(){var pattern = /^\s+$/g;return this.replace(pattern,"");};/** * <pre> * 字符串去后空格 * </pre> * @returns 去空格后字符串 */String.prototype.rightTrim = function(){var pattern = /\s+$/g;return this.replace(pattern,"");};
- JavaScript函数备份(大部分参考EXT2.0.2)
- JavaScript 函数参考(全局对象)
- Webservice 基础 (其中大部分信息参考传智播客)
- 大部分.NET常用函数
- ASP.NET面试题(参考,大部分实用)
- 参考:大部分ADO错误代码对应含义说明
- 目前最好的EXT2.0中文参考
- javascript参考教程(一)JavaScript 简介
- JavaScript参考
- JavaScript 参考
- JavaScript 参考
- Javascript参考
- javascript参考
- javaScript参考
- javascript 参考
- JavaScript+参考
- ext2
- ext2
- SQLite适用的范围
- ICMP报文分析
- 专注于操作系统21之分页进阶
- MyEclipse8.x以上版本外部链接方式添加插件
- 周立波语录46条
- JavaScript函数备份(大部分参考EXT2.0.2)
- 关于UITableViewCell的重用初探
- getSystemService
- SQLite SQLiteSQLite
- nyoj-485 --另类大数乘法
- AIR Native Extension的使用--AIR程序中获取手机SIM卡信息01
- C/C++"野指针"问题
- VB.NET 与 C# 基础语法区别(一)
- UBUNTU开samba服务