封装方法
前端小99
心有猛虎 细嗅蔷薇
展开
-
常用javascript方法封装
1、输入一个值,返回其数据类型function type(para) { return Object.prototype.toString.call(para)}2、数组去重function unique1(arr) { return [...new Set(arr)]}function unique2(arr) { var obj = {}; return arr.filter(ele => { if (!obj[ele])原创 2021-03-02 15:56:55 · 235 阅读 · 0 评论 -
封装函数 获取url中的参数值
functiongetUrlkey(url){varparams={},arr=url.split("?");if(arr.length<=1)returnparams;arr=arr[1].split("&");for(vari=0,l=arr.length;i<l;i++){vara=arr[i].split("=");...原创 2020-11-18 10:14:23 · 488 阅读 · 0 评论 -
promise封装
class MyPromise{ constructor(callback){ this.status = 'pendding'; this.result = null; this.err = null; this.resolveFn = null; this.rejectFn = null; this.resolve = function...原创 2020-09-16 22:08:19 · 210 阅读 · 0 评论 -
封装格式化函数定义模板
1 定义模板 调整样式 <script type="text/template" id="template"> <li> <div class="username"><span>用户名: </span><span><%username%></span></div><div class="password"><span>密码: </span>&l...原创 2020-09-13 16:46:45 · 210 阅读 · 0 评论 -
封装表单序列化
var Serialize{ // 表单传递进来 我们首先要获取到 表单中有哪些控件 // 表单元素有一个属性 elements 指向当前表单中的所有控件 // console.log(form.elements); // 我们用到的只是带有name属性的哪些 那些不带name属性的我们用不到 // 定义一个数组 用于存放所有的带name属性的 serialize: function(form) { ..原创 2020-09-13 15:24:19 · 171 阅读 · 0 评论 -
封装迭代器 遍历数组与对象
// 定义数组 var arr = ["三星", "华为", "苹果", "香蕉"]; // 定义对象 var obj = { a: "苹果", b: "香蕉", c: "地瓜", d: "黄瓜" } // 封装一个函数,通过该函数可以实现对数组和对象的遍历 /** * each方法 可以实现对数组和对象的遍历 * @target 要遍历的目标 * @fn 要执行的函数 **/ function each(target, fn) { // 判.原创 2020-09-12 16:57:10 · 376 阅读 · 0 评论 -
封装节流器
/** * Throttle方法可以实现两种功能 * 1: 开启节流器 Throttle(fn, {}) * @fn: 要节流的函数 * @options 配置对象 * @context 执行时候的上下文(this) * @args 原函数所需要的参数 * @time 决定延迟的时间 * * 2: 关闭节流器 Throttle(false, fn) * @fasle 是一个标识, 当传递false的时候 说明是要关闭节流器了 * @f.原创 2020-09-12 14:54:51 · 190 阅读 · 0 评论 -
封装二级绑定事件中兼容高级浏览器与ie浏览器
<div id="box"></div> <script type="text/javascript"> // 获取元素 var box = document.getElementById("box"); // 封装一个函数,用于解决高级浏览器中和IE中绑定事件统一的方 /** * bindEvent方法 兼容多个浏览器之间事件绑定方式 * @dom 要绑定事件元素 * @type 事件的类型 * @fn 执行事件函数 **/ fu.原创 2020-09-06 23:08:18 · 163 阅读 · 0 评论 -
封装animate动画
<style type="text/css"> * { margin: 0; padding: 0; } #box { position: absolute; width: 100px; height: 100px; background-color: red; left: 10px; top: 10px; } button { position: fixed; width: 100px; height: 3.原创 2020-09-06 22:21:12 · 238 阅读 · 0 评论 -
封装函数,解决childNodes兼容性问题 解决高级浏览器中节点中空白符问题
function getChildNodes(dom) { /** * 步骤: * 1: 循环查看dom的所有子节点, 查看有没有文本类型 * 2: 如果有文本类型, 定义正则表达式去匹配 * 3: 定义一个数组,存储不是空白符的节点 * 4: 将不是空白符的节点存储起来 * 5: 返回该数组 **/ // 定义数组 var arr = []; for (var i = 0; i < dom.childNodes.length; i++) { /.原创 2020-09-06 17:57:45 · 303 阅读 · 0 评论