/** * @author wsf */ /** * 为所有对象添加val方法 */ if (!Object.prototype.val) { Object.prototype.val = function() { return this.valueOf(); } } /** * 判断是否为数字型数据 */ if (!Object.prototype.isNumber) { String.prototype.isNumber = function() { return !this || isNuN(this.val()) ? false : ( typeof this.val() === "number"); } } /** * 为数组添加remove方法 */ if (!Array.prototype.remove) { Array.prototype.remove = function(s) { for (var i = this.length; i >= 0; i--) { if (s === this[i]) this.splice(i, 1); } } } /** * 为所有类型数据添加apply方法针对数组和json对象 */ if (!Object.prototype.applyAll) { Object.prototype.applyAll = function(callback) { if (!this) return; var idx = 0; if (this.remove && this[0]) { //数组 for (var o = this[0]; idx < this.length && callback.call(o, idx, o) != false; o = this[++idx]) { } } else { //对象 for (var i in this) { if (callback.call(this[i], i, this[i]) === false) break; } } } } /** * 为数组添加indexOf方法 */ if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(o) { for (var i = this.length; i >= 0; i--) { if (this[i] === o) return i; } return -1; } } /** * 为数组添加contain方法 */ if (!Array.prototype.contain) { Array.prototype.contain = function(o) { var validx = this.indexOf(o)//拿到索引 return validx > 0; } } /** * 为数组添加put方法(添加的到指定下标位置) */ if (!Array.prototype.put) { Array.prototype.put = function(o, idx) { return this.splice(idx, 0, o); } } /** * 为字符对象添加intVal方法 */ if (!String.prototype.intVal) { String.prototype.intVal = function() { return parseInt(this); } } /** * 为字符对象添加doubleVal方法 */ if(!String.prototype.doubleVal){ String.prototype.doubleVal = function (){ return parseDouble(this); } } /** * id选择器和类选择器 */ function selc(s) { if (s.indexOf("#") > 0) return document.getElementById(s.replace("#", "")); else if (s.indexOf(".") > 0) { var result = []; var a = selector.split("."); var prefix = a[0] || "*"; //前缀 var suffix = a[1]; //后缀 var docs = document.getElementsByTagName(prefix); docs.applyAll(function() { if (this.nodeType === 1 && this.id) { var classNames = this.className.split(/\s+/g); //所有类名 var finded = this; classNames.applyAll(function() { if (this === suffix) result.push(finded); }); } }); return result; //返回结果集合 } } /** * ajax请求 * @param {} options */ function ajax(options) { var httpRequest = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); httpRequest.onreadystatechange = function() { var dataType = options.dataType.toLowerCase(); httpRequest.readyState === 4 && httpRequest.status === 200 && options.callback(dataType === "json" ? eval("(" + httpRequest.responseText + ")") : dataType === "xml" ? httpRequest.responseXML : httpRequest.responseText, options.context); }; httpRequest.open(options.mode, options.url, options.sync); if (options.mode.toLowerCase() === "post") { httpRequest.setRequestHeader("CONTENT-TYPE", "application/x-www-form-urlencoded;charset=utf-8"); } options.mode.toLowerCase() === "get" ? httpRequest.send(null) : httpRequest.send(options.params); } /** * Map实现 */ var Map = function() { this.flag = false; this.store = new Array(); if (!this.flag) { Map.prototype.entry = function(key, val) { this.key = key; this.val = val; } Map.prototype.put = function(key, val) { this.store[this.store.length] = new this.entry(key, val); } Map.prototype.get = function(key) { for (var i = this.store.length - 1; i >= 0; i--) { if (this.store[i].key === key) return this.store[i].val; } return null; } Map.prototype.remove = function(key) { for (var i = this.store.length - 1; i >= 0; i--) { this.store[i].key === key && this.store.splice(i, 1); } } Map.prototype.keySet = function() { var keys = new Array(); for (var i = 0; i <= this.store.length - 1; i++) { keys.push(this.store[i].key); } return keys; } Map.prototype.valSet = function() { var vals = new Array(); for (var i = 0; i <= this.store.length - 1; i++) { vals.push(this.store[i].val); } return vals; } Map.prototype.clear = function() { this.store.length = 0; } Map.prototype.size = function() { return this.store.length; } this.flag = true; } }
相关推荐
### JS读取本地Excel文档数据知识点详解 #### 一、背景与需求分析 在Web开发中,经常需要处理用户上传的文件,特别是Excel文件。这些文件通常包含了重要的数据信息,如表格数据等。通过JavaScript(JS)来读取并...
tianditu.js 天地图本地缓存4.0下载
苹果CMSV10本地化CKPLAYER增加记忆播放 自动下一集方法 复制到苹果CMSV10的www\static\player文件夹里面!直接可以用! 苹果CMSV10本地化CKPLAYER增加记忆播放+自动下一集方法 苹果CMSV10本地化CKPLAYER增加记忆...
在本地使用 Element UI 的编译版,虽然可能会增加项目的体积,但可以避免因网络问题导致的加载失败,同时也能保护用户的隐私,不依赖外部资源。如果你的项目对性能有较高要求,可以考虑使用 Tree Shaking 和按需引入...
《ArcGIS JavaScript API 4.22:前端开发与本地部署详解》 ArcGIS JavaScript API 是Esri公司推出的一款强大的地图开发工具,主要用于构建交互式的Web GIS应用。本篇文章将深入探讨API的4.22版本,以及在前端开发中...
WT-JS_DEBUG v1.4 是一个专为JavaScript开发者设计的本地调试工具,旨在帮助程序员在开发过程中更有效地调试和测试JavaScript代码。这个工具提供了丰富的功能,使得在本地环境中进行JS代码的调试变得简单而高效。 #...
JavaScript操作本地文件的能力是Web开发中的一个重要进展,特别是在现代浏览器如Chrome、IE和Firefox中,JavaScript引擎的性能提升使得更多的复杂任务得以实现。W3C正在考虑的一个草案就是JavaScript直接操作本地...
作者引入了OPOA组件式开发方法,但是这种方法会增加js文件的总量。为了解决这个问题,作者推荐使用yui-compressor对js文件进行压缩混淆。 yui-compressor是Yahoo!开发的一款js压缩工具,可以将js文件压缩到原来的1/...
Vue.js 是一款流行的前端框架,...以上就是在 Vue.js 中处理动态加载本地图片的不同方法。选择合适的方法取决于项目的需求,例如图片大小、部署环境等因素。理解这些技巧对于优化 Vue 应用的性能和用户体验至关重要。
为了使HTML与Python进行交互,我们可以利用Python的HTTP服务框架(如Flask或Django)创建一个API接口,或者使用更简单的解决方案,如Node.js的child_process模块(在JavaScript中使用)或者Python的os模块(在Python...
Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它允许开发者在服务器端使用JavaScript进行编程,极大地拓宽了JavaScript的应用领域。而Mr2.js是专为Node.js开发的一个工具,它作为一个客户端内置了mr2免费...
于是,WordPress引入了`l10n.js`,这是一个JavaScript本地化工具库,包含`convertEntities()`方法,用于将HTML实体转换回原始值,确保本地化资源在其他JavaScript脚本之前正确加载。 要使用JavaScript本地化,...
`initDom`方法用于初始化`userData`,`set`、`get`和`remove`方法分别对应设置、获取和移除本地存储的数据。 通过这样的封装,开发者可以方便地在不同的浏览器环境中使用本地存储功能,而无需关心底层实现的差异。...
在Node.js环境中,将本地文件上传到服务器是一个常见的任务,主要应用于文件共享、数据备份、内容发布等场景。本文将详细讲解如何使用Node.js实现这一功能。 首先,我们需要理解Node.js的基本概念。Node.js是一个...
Android应用可以调用服务器上的API,这些API由Node.js或其他后端服务提供,执行JavaScript代码并返回结果。这种方式增加了网络延迟,但避免了在客户端解析JavaScript的开销。 4. **本地服务与WebSocket** 创建一个...
在探讨“问一个关于echarts本地路径的问题”这个主题时,我们首先需要理解ECharts是什么以及它在前端开发中的作用。ECharts是一个基于JavaScript的数据...在实际开发中,不断实践和调试是提升这方面技能的有效方法。
### Js获取本地时间和相关操作 在JavaScript中,`Date`对象是处理日期和时间的核心工具。本文将详细介绍如何使用JavaScript来获取本地时间及其相关操作,包括但不限于:年、月、日、时、分、秒等具体信息的获取方法...
2. **应用Chosen到select元素**:接着,你可以通过jQuery或其他JavaScript库选择`select`元素,并调用`chosen()`方法来激活`Chosen`的功能。确保在DOM加载完成后执行此操作,通常在`$(document).ready()`函数内: `...
JavaScript中的MD5加密工具类是用于对数据进行安全哈希的一种方法,广泛应用于密码存储、数据完整性校验等场景。MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它能将任意长度的输入转化为固定长度的...
"Reres js本地文件替换"是一个专注于解决这类问题的工具,尤其对于开发者在开发过程中快速迭代和测试非常有用。 Reres(发音类似“re-re-re”)是一个JavaScript库,它的主要功能是帮助开发者在本地环境中便捷地...