![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 54
Naparte
积跬步以至千里
展开
-
重构改善既有代码的设计 --方法篇
重构改善既有代码的设计 --方法篇重新组织数据目的:解决不易理解的错综复杂的长函数,促使代码更清晰更易维护。解决思路:长函数变成短函数、算法结构优化常用方法:抽离函数(Extract Method),通过查询的方式来获取值 (Replace Temp With query), 优化算法 (Substitute Algorthm)AF老项目中有很多行数过百的函数,导致维护起...原创 2020-02-16 17:58:28 · 225 阅读 · 0 评论 -
浅析函数式编程
浅析函数式编程以函数抽象为单元 function parseAge(age) { if (!_.isString(agr)) { throw new Error('Expecting is String'); } console.log('告警:接收到参数,准备类型转化'); var tem...原创 2019-12-03 00:55:34 · 152 阅读 · 0 评论 -
JS 的 EventLoop
JS 的 EventLoopJavaScript 是单线程、异步、非阻塞、解释型脚本语言名词介绍stack(栈)先进后出queue(队列)先进先出heap(堆) function a() { b(); } function b() { c(); } function c() { co...原创 2019-10-31 02:44:22 · 177 阅读 · 0 评论 -
ES6 模块加载
ES6 模块加载export,import的语法 let module1 = 'GongGe4', module2 = 'VFrank', module3 = 'No Bugs'; // 原名输出 export { module1, module2, module3 }; ...原创 2019-01-03 00:26:52 · 127 阅读 · 0 评论 -
JavaScript_正则使用
正则使用正则可视化工具地址 https://regex101.com/特殊字符特殊含义字符符号含义\转义符(可以将其后的特殊字符,转义为字面量)^匹配输入字符串的开始位置,在方括号表达式中使用,表示不接受该字符集合$匹配输入字符串的结尾位置.小数点)匹配除换行符之外的任何单个字符。eg: /.n/将会匹配 “nay, an apple ...原创 2019-01-13 02:06:19 · 173 阅读 · 0 评论 -
节流和防抖
节流和防抖防抖使用场景search搜索联想,用户在不断输入值时,使用防抖减少请求次数。 function debounce(fn, delay) { var delay = delay || 200; var timer; return function() { var th = this; ...原创 2019-01-21 22:17:44 · 125 阅读 · 0 评论 -
Ext 常用布局
Ext 常用布局hbox 和 vbox一个是水平布局,一个是垂直方向的布局// vbox new Ext.Container({ width: 1000, cls: 'sf-wrap', layout: { type: 'vbox', align: 's...原创 2019-02-24 16:00:28 · 1143 阅读 · 0 评论 -
JavaScript 原型链常用方法
JavaScript 原型链常用方法对象属性类型数据属性Configurable(表示能否通过 delete 删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性)Enumerable(表示能否通过 for-in 循环返回属性)Writable(表示能否修改属性的值)Value(这个属性的数据值。读取属性值的时候,从这个位置读;写入属性值的时...原创 2019-03-17 22:01:55 · 1350 阅读 · 1 评论 -
JavaScript浏览器环境判断
var docMode = document.documentMode,ua = navigator.userAgent.toLowerCase(),check = function® {return r.test(ua);};function isOpera() {return /opera/.test(ua);// return check(/opera/);};functi...原创 2019-03-22 20:13:10 · 511 阅读 · 0 评论 -
采坑记录
#采坑记录IE浏览器使用eval IE8 浏览器不支持在script脚本中插入innerHTML执行, 需要要使用execScript() 来执行脚本, 这里不使用eval() 因为, eval好像有另外一个全局window, 作用域和浏览器直接访问的又不一样 if (!-[1, ]) { // !-[1,] 造IE8 中会返回true,IE9、10、Chro...原创 2019-03-22 20:32:51 · 155 阅读 · 0 评论 -
Document.cookie
Document.cookie官方对cookies的过期和永久推荐做法对于永久cookie使用Fri, 31 Dec 9999 23:59:59 GMT作为过期日。如果你不想使用这个日期,可使用世界末日Tue, 19 Jan 2038 03:14:07 GMT,它是32位带符号整数能表示从1 January 1970 00:00:00 UTC开始的最大秒长(即0111111111111...原创 2018-11-22 19:55:20 · 2884 阅读 · 0 评论 -
JavaScript中使用splice删除数组的问题
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">原创 2018-11-07 00:23:54 · 378 阅读 · 0 评论 -
JavaScript中link和@import的区别
link和@import的区别原创 2017-11-25 21:02:50 · 886 阅读 · 1 评论 -
JS一键复制实现
JS 实现一键复制操作 copyUrl: function (url) { var dom = this.el.dom, textArea = document.createElement("textarea"); dom.appendChild(textArea); textArea.style.position ...原创 2018-09-23 20:35:08 · 623 阅读 · 0 评论 -
JS数组的Reduce方法
Array的reducereduce() 方法对累加器和数组中的每个元素(从左到右)应用一个函数,将其简化为单个值。reduce为数组中的每一个元素依次执行callback函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:accumulator 累加器currentValue 当前值currentIndex 当前索引array 数组回调函数第一次执行时,ac...原创 2018-09-24 20:29:24 · 3310 阅读 · 0 评论 -
JS Object实用的方法
JS Object实用的方法Object.values()方法返回一个给定对象自身的所有可枚举属性值的数组,值的顺序与使用IE完全不兼容node中使用会报错(TypeError: Object.values is not a function) var obj = { foo: 'bar', baz: 42 }; console.log(Object.value...原创 2018-09-24 22:31:14 · 431 阅读 · 0 评论 -
Post_From创建下载
function download(url, config, newTab) { var doc = document, form = doc.createElement('form'), input = doc.createElement('input'), iframe = doc.createElement('iframe'), ...原创 2018-09-22 00:06:02 · 154 阅读 · 0 评论 -
JS数组遍历方式
JS 数组遍历方法filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。 var words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present']; const result = words.filter(word => word.length > 6);...原创 2018-09-22 00:51:04 · 538 阅读 · 0 评论 -
Ext使用事项
使用region布局的时候,容器的layout必须是border原文:this config is only used when this BoxComponent is rendered by a Container which has been configured to use the BorderLayout layout manager...原创 2018-10-06 23:30:13 · 120 阅读 · 0 评论 -
JS的htmlEncode和htmlDecode
JS的htmlEncode和htmlDecode htmlEncode : function(value){ return !value ? value : String(value).replace(/&amp;/g, "&amp;amp;").replace(/&gt;/g, "&amp;gt;").replace(/&lt;原创 2018-10-17 13:11:39 · 4339 阅读 · 0 评论 -
JS遍历方法与forEach对比
// 找出未配置的策略字段let policy = {“ips”: 0,“waf”: 0,“pvs”: 1};let filterArr = Object.keys(policy).filter((key) =&amp;amp;amp;gt; {return policy[key] === 0;});/*****对比forEach/// let filterArr = [];// Object.ke...原创 2018-10-22 19:32:13 · 238 阅读 · 0 评论 -
JavaScript的window自带转码方法
btoa()和atob()转码方法 --IE10+window.btoa()从 String 对象中创建一个 base-64 编码的 ASCII 字符串,其中字符串中的每个字符都被视为一个二进制数据字节。字符的码位不能超出 0x00 ~ 0xFF 范围,否则会引发 InvalidCharacterError 异常 window.btoa('abcd'); // "YWJjZA...原创 2018-10-24 23:05:16 · 1059 阅读 · 0 评论 -
JavaScript常用数组操作方法。
JavaScript常用数组操作方法。concat()concat() 方法用于连接两个或多个数组,返回被连接数组的一个副本。不改变原数组。 let arr1 = [2, 3, 4], arr2 = [4, 5, 6]; let arr3 = arr1.concat(arr2); console.log(arr3); // [ 2, ...原创 2018-10-21 21:01:03 · 482 阅读 · 0 评论 -
Ext组件设计思想
Ext.Component = function(config) { this.initialConfig = config; Ext.apply(this, config); this.addEvents(); this.getId(); Ext.ComponentMgr.register(this);...原创 2018-11-01 22:20:54 · 174 阅读 · 0 评论 -
Js类数组转换为数组对象
类数组转换为数组对象原创 2017-11-17 11:12:06 · 653 阅读 · 0 评论