/** * 格式化时间函数 * @param {format} 时间显示格式 */ Date.prototype.format = function (format) { var date = { "M+": this.getMonth() + 1, "d+": this.getDate(), "h+": this.getHours(), "m+": this.getMinutes(), "s+": this.getSeconds(), "q+": Math.floor((this.getMonth() + 3) / 3), "S+": this.getMilliseconds() }; if (/(y+)/i.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length)); } for (var k in date) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? date[k] : ("00" + date[k]).substr(("" + date[k]).length)); } } return format; }; String.prototype.format = function (args) { if (arguments.length > 0) { var result = this; if (arguments.length == 1 && typeof (args) == "object") { for (var key in args) { var reg = new RegExp("({" + key + "})", "g"); result = result.replace(reg, args[key]); } } else { for (var i = 0; i < arguments.length; i++) { if (arguments[i] == undefined) { result = result.replace(reg, arguments[i]); } else { var reg = new RegExp("({[" + i + "]})", "g"); result = result.replace(reg, arguments[i]); } } } return result; } else { return this; } } String.prototype.trim = function () { return this.replace(/(^\s*)|(\s*$)/g, '') }; function StringBuilder() { this.__values = new Array(); }; StringBuilder.prototype.appendLine = function (v) { this.__values.push(v); } StringBuilder.prototype.toString = function () { return this.__values.join(''); } Number.prototype.toFixed = function (d) { var s = this + ""; if (!d) d = 0; if (s.indexOf(".") == -1) s += "."; s += new Array(d + 1).join("0"); if (new RegExp("^(-|\\+)?(\\d+(\\.\\d{0," + (d + 1) + "})?)\\d*$").test(s)) { var s = "0" + RegExp.$2, pm = RegExp.$1, a = RegExp.$3.length, b = true; if (a == d + 2) { a = s.match(/\d/g); if (parseInt(a[a.length - 1]) > 4) { for (var i = a.length - 2; i >= 0; i--) { a[i] = parseInt(a[i]) + 1; if (a[i] == 10) { a[i] = 0; b = i != 1; } else break; } } s = a.join("").replace(new RegExp("(\\d+)(\\d{" + d + "})\\d$"), "$1.$2"); } if (b) s = s.substr(1); return (pm + s).replace(/\.$/, ""); } return this + ""; } //限制只能键入数字,flage:是否验证‘.’传入则不可以输入‘.’ function entNumber(e, flage) { e = e || window.event; var keyCode = e.keyCode || e.which; if (!(keyCode == 46) && !(keyCode == 8) && !(keyCode == 37) && !(keyCode == 39) && !(keyCode == 17) && !(keyCode == 13) && ctrlKey()) { if (!((keyCode >= 48 && keyCode <= 57) || (keyCode == 110 || keyCode == 190) || keyCode == 9 || (keyCode >= 96 && keyCode <= 105))) stopDefault(e); if (flage) if (!((keyCode >= 48 && keyCode <= 57) || keyCode == 9 || (keyCode >= 96 && keyCode <= 105))) stopDefault(e); } //ctrl+c/v/a/x/z function ctrlKey() { return !(e.ctrlKey && keyCode == 67) && !(e.ctrlKey && keyCode == 86) && !(e.ctrlKey && keyCode == 65) && !(e.ctrlKey && keyCode == 88) && !(e.ctrlKey && keyCode == 90) } } function getKeyCode(e) { e = e || window.event; return e.keyCode || e.which; } //阻止浏览器的默认行为 function stopDefault(e) { e = e || window.event; if (e.preventDefault) e.preventDefault(); //其他浏览器 else e.returnValue = false; //IE浏览器 } /** * 阻止事件(包括冒泡和默认行为) * */ function stopEvent(e) { e = e || window.event; if (e.preventDefault) { //其他浏览器 e.preventDefault(); e.stopPropagation(); } else { //IE浏览器 e.returnValue = false; e.cancelBubble = true; } }; //过滤HTML标签 String.prototype.removeHtmlTab = function () { return this.replace(/<[^<>]+?>/g, ''); } //HTML标签字符转换成转意符 String.prototype.html2Escape = function () { return this.replace(/[<>&"]/g, function (c) { return { '<': '<', '>': '>', '&': '&', '"': '"'}[c]; }); } //转意符换成HTML标签 String.prototype.escape2Html = function () { var arrEntities = { 'lt': '<', 'gt': '>', 'nbsp': ' ', 'amp': '&', 'quot': '"' }; return this.replace(/&(lt|gt|nbsp|amp|quot);/ig, function (all, t) { return arrEntities[t]; }); } // 转成空格 String.prototype.nbsp2Space = function () { var arrEntities = { 'nbsp': ' ' }; return this.replace(/&(nbsp);/ig, function (all, t) { return arrEntities[t] }) } //回车转为br标签 String.prototype.return2Br = function () { return this.replace(/\r?\n/g, "<br />"); } /** * 移除数组中的空元素 * @param {array} 数组 * @returns {narray} 新数组 * */ Array.prototype.trimArray = function () { var array = this; var narray = []; for (var i = 0; i < array.length; i++) if (array[i]) { if (typeof array[i] == "string") { if (array[i].trim()) narray.push(array[i]); } else { narray.push(array[i]); } } return narray; }; /** * 移除数组中的指定元素 * @param {elm} 指定元素值 * @returns {narray} 新数组 * */ Array.prototype.remove = function (elm) { for (var i = 0; i < this.length; i++) { if (this[i] == elm) this[i] == ''; break; } return this.trimArray(); //清除空元素 }; /** * 去除数组中重复的元素 * @param {isStrict} 是否严格模式 * ['1',1] isStric=true 返回1,否则,返回1,1 * @returns {Array} * */ Array.prototype.unique = function (isStrict) { if (!this.length) return []; if (this.length < 2) return [this[0]] || []; var tempObj = {}, newArr = []; for (var i = 0; i < this.length; i++) { var v = this[i]; var condition = isStrict ? (typeof tempObj[v] != typeof v) : false; if ((typeof tempObj[v] == "undefined") || condition) { tempObj[v] = v; newArr.push(v); } } return newArr; }; /** * 统计元素在数组中出现的次数 * @param {array} 数组 * ['1',1] isStric=true 返回1,否则,返回1,1 * @returns {Array} 返回一个二维数组::["元素名","出现的次数"] * */ Array.prototype.sameCount = function () { var res = []; var ary = this; ary.sort(); for (var i = 0; i < ary.length; ) { var count = 0; for (var j = i; j < ary.length; j++) { if (ary[i] == ary[j]) { count++; } } res.push([ary[i], count]); i += count; } return res; }
相关推荐
### JavaScript中的Window对象详解 #### 一、概述 在JavaScript编程中,`Window`对象是极为重要的基础概念之一。作为客户端JavaScript的最高层对象之一,`Window`对象几乎贯穿于所有的浏览器交互过程中。无论是...
根据给定的信息,我们可以梳理出以下与“常用js整理”相关的知识点: ### 1. JavaScript 版本控制 - **JavaScript1.2**: 在提供的代码片段中,`<script language=JavaScript1.2>` 指定了脚本使用的 JavaScript ...
根据提供的标题、描述以及部分代码内容,我们可以梳理出与JavaScript相关的多个知识点。下面将逐一解析这些内容,并尽可能地提供详尽的信息。 ### JS常用语法大全 #### 1. 输出当前时间 ```html now() %> ``` ...
数组是另一种常用的数据结构,JavaScript提供了丰富的数组方法,如push、pop、shift、unshift、slice、splice、concat、map、filter、reduce等。熟练掌握这些方法将大大提高代码的效率和可读性。 异步编程在...
这里的关键在于使用了`window.open()`函数来打开新窗口,并且通过`Response.Write`将JavaScript代码输出到页面中执行。需要注意的是,`this.DropDownList1.SelectIndex`应该被替换为实际的索引值,而`++`运算符也...
### JavaScript 常用知识点梳理 #### 一、基本语法及文档结构 1. **输出语句**: `document.write("")` 是一种简单的输出方法,它会将括号内的内容直接写入当前文档流中。 2. **注释**: JavaScript 支持两种类型的...
5. 利于学习JavaScript和jQuery:随着网站变得更加交互性和动态,CSS和JavaScript(jQuery是JavaScript的一个库)的结合使用变得很常见,CSS为JavaScript操作提供了丰富的视觉反馈。 在CSS中,选择器用于指定样式...
根据提供的文件信息,我们可以梳理出一系列与PHP编程相关的知识点,这些知识点主要集中在文件操作、条件判断、函数使用等方面。下面将对这些知识点进行详细的解析。 ### 文件操作 1. **`file_exists()` 函数** - ...
根据提供的文件信息,我们可以梳理出一系列关于JavaScript的基本概念与实用代码片段。以下是对这些知识点的详细解释: ### 1. `document.write("")` `document.write` 是一个在文档流中写入HTML的方法,通常用于...
Node.js的Express框架是构建API的常用工具。数据库知识也必不可少,包括关系型数据库如MySQL和非关系型数据库如MongoDB,理解SQL查询和NoSQL数据模型的区别和应用场景。 "其它杂项"可能包含如Webpack这样的模块打包...
- React.js是Facebook开发的一个用于构建用户界面的JavaScript库,它的虚拟DOM和组件生命周期管理是面试中常考的知识点。 - Vue.js是一个渐进式JavaScript框架,其组件化开发和双向数据绑定的概念也是前端开发者...
从提供的文件内容中,我们可以提取出有关JS表单验证的知识点,主要包括了如何使用JavaScript和jQuery来进行表单验证,以及实现验证的具体方法和代码。以下详细的知识点梳理: 1. 表单验证的基本概念: 表单验证是...
- **使用外部JS文件**:通过链接外部的`.js`文件来组织JavaScript代码,便于维护和复用。 - 示例: ```html 编写位置.js"> ``` - **编写到指定的属性中**:使用`onclick`等事件属性直接将简单的JavaScript代码...
由于提供的文件信息中...由于文档内容的具体细节没有提供,以上是基于标题和描述中提及的主题“React Native 用JavaScript开发移动应用”所进行的知识点梳理。希望这份总结能满足你对 React Native 开发知识点的需求。
- **2.1.3 我的代码什么时候被执行--不同执行期的JavaScript代码** - 讲解了JavaScript代码的不同执行阶段。 - **2.1.4 拿来主义--引入外部的JavaScript文件** - 指导如何加载外部JavaScript文件。 - **2.2 ...
根据提供的文件信息,我们可以梳理出以下几个关键的知识点: ### 一、正则表达式的使用场景与功能 在上述代码片段中,正则表达式被用来完成多种任务,包括字符串清洗、格式验证等。 #### 字符串清洗 1. **去除...
"js思维导图"旨在帮助开发者构建一个完整的JavaScript知识框架,便于理解和掌握这门语言的核心概念、语法结构以及常用库和框架。 JavaScript的主要知识点包括: 1. **基础语法**:JavaScript的基础语法类似于C++和...