此博客是本人从学生时代开始做笔记所用, 部分是工作所遇问题,做填坑笔记,部分闲来查阅资料,加上自己的理解所总结的学习笔记, 常忙得不可开交,若漏了资料来源,望通知~ 前路漫漫,写点东西告诉自己正在一点点进步,而不要迷失于繁忙。

09 2017 档案

摘要:假定有: 这样一个数组矩阵,现要求对其进行顺时针方向螺旋形从外至内地遍历,即输出: [1,2,3,6,9,8,7,4,5] 分析: 将每一次360度遍历视为一个周期,每一个周期分为上右下左四个阶段,逐个进行遍历: 以下是本人的草稿,请忽略苍劲如龙卷风摧朽拉枯般的字体。。。 理清思绪后就剩下笔了: 阅读全文
posted @ 2017-09-28 14:20 炎泽 编辑
摘要:数组属于引用数据类型,其值存储在堆中,因此我们无法简单的用[]==[]对其进行判断,但可以使用类似于深拷贝的方法将其像剥洋葱一样拨开,逐个判断 下面是本人自己写的一套算法: 阅读全文
posted @ 2017-09-27 15:07 炎泽 编辑
摘要:首先,让我们先做一道算法题: 将一串带小数的金额,例如: 1010000.5689, 每3位加上','分隔符。 刚开始我的做法是将.左边的部分单独提取出来进行正则替换,这花费了不少的步骤,直到我发现这种做法: function commafy(str){ return str.replace(/(\ 阅读全文
posted @ 2017-09-22 14:24 炎泽 编辑
摘要:IFC(inline formatting context),行内格式化上下文 特点: 1.内联元素在水平线上一个接一个排列 2.内部元素水平方向上的margin、padding、border有效,垂直方向上无效 3.垂直方向上有多种对齐方式: 顶部、底部、基线。。 4.每一列元素构成一个line 阅读全文
posted @ 2017-09-21 10:11 炎泽 编辑
摘要:本文由 http://www.cnblogs.com/phpstudy2015-6/p/6767032.html 整理总结而来 XSS又称CSS(cross site script),译为跨站脚本攻击,是web程序中常见的漏洞。 原理: 攻击者向有XSS漏洞的网站输入恶意代码(耗时间),当用户浏览该 阅读全文
posted @ 2017-09-20 15:55 炎泽 编辑
摘要:String与toString能将对象转为字符串: 虽然两者功能一般情况下相同,但还是有区别的 1.使用toString将null、undefined转为字符串会报错,而是要String会返回'null'、'undefined' 2.toString()可增加进制参数,将字符串进行进制转换,Stri 阅读全文
posted @ 2017-09-15 16:56 炎泽 编辑
摘要:link与@import都是从外部引入css的方式,但区别很大: 1.link输入XHTML标签,除了加载css以外,还可以加载rss等;@import只能引入css; 2.link在页面载入时同时加载,@import在页面完全载入后加载; 3.link无兼容问题,@import是css2.1提出, 阅读全文
posted @ 2017-09-15 14:29 炎泽 编辑
摘要:我们常说的文档流分为普通流、浮动流与定位流三种。 FC(formatting context格式化上下文),指的是一块渲染区域,依靠渲染规则,决定其子元素如何布局及与其他元素的关系和作用。 FC分为BFC、IFC、GFC和FFC,其中BFC(block formatting context)块级格式 阅读全文
posted @ 2017-09-12 17:06 炎泽 编辑
摘要:相比很多人都遇见过这样的情况: 给一个ul的所有li绑定行为,在点击时获取其index。 假设结构如下: 很多人会这么做: 结果输出的全是5,这便是闭包的最常见的出现情形。 解决方案: 1.利用let块级作用域的特性 2.利用自执行函数独立作用域,也是红宝书里推荐的写法 3.利用事件委托机制(只适用 阅读全文
posted @ 2017-09-11 09:43 炎泽 编辑
摘要:在我们实际做项目的过程中,有时需要在拉伸页面时调节弹框位置,这就需要调用window.resize函数,但这也会引发一个问题, 那就是在极短的时间内,resize内的函数会被执行许多次,造成内存的大量使用甚至浏览器崩溃,同理,在调用mousemove时也会这样。 为此,在js红宝书内提出了函数节流的 阅读全文
posted @ 2017-09-10 10:39 炎泽 编辑
摘要:观察者模式定义一种一对多的关系,多个观察者订阅一个主题对象,当主题对象发生改变的时候通知所有观察者,使他们能实现更新。 具体实现方式: 定义一个被观察对象,定义一个主题数组,观察者订阅主题通过往数组对象内添加回调函数来实现,当主题发生改变时轮流调用回调函数。 有时我们不喜欢使用那么多this,不想把 阅读全文
posted @ 2017-09-10 10:00 炎泽 编辑
摘要:js中并没有函数重载的概念,但函数的arguments参数能帮助我们模拟重载。 arguments并不是真正的数组,但拥有length(参数数目),且能通过数组下标的方式进行访问,例如arguments[0],arguments[1]。。。 拥有callee属性,指向此函数。 将arguments转 阅读全文
posted @ 2017-09-09 23:01 炎泽 编辑
摘要:定义: 使多个对象都有机会处理请求,避免发送者与接受者之间的耦合关系,将对象连成一条链,沿着这条链传递请求,直到有一个对象处理它。 如何把对象串联起来?解决方法通常是将另一个对象作为新创建对象的参数,称为继承者。 如何把请求传递下去?通常在其原型上定义同名请求方法,在此方法里调用继承者。 极简示例如 阅读全文
posted @ 2017-09-08 14:56 炎泽 编辑
摘要:什么是工厂模式?就好比一个工厂,能造汽车、飞机...,通过对外接口,由顾客决定,来定制哪一款产品。 在js内表现为,一个工厂函数/对象,包含汽车、飞机等子类,提供对外接口,根据参数返回不同子类的实例 简单实例如下: 何时使用: 1.对象构建十分复杂 2.需要依赖具体环境创建不同实例 3.处理大量具有 阅读全文
posted @ 2017-09-08 12:03 炎泽 编辑
摘要:同源限制: 浏览器不允许一个域的脚本请求另一个域的文档,通俗来说,不允许访问不同协议、不同域名或不同端口的文档 跨域处理方法: 1.jsonp 前提: 浏览器虽然对ajax请求做出了限制,但script的链接没有限制,例如: <script src= 'xxx'>,我们可以轻松地链接到另一个域的文件 阅读全文
posted @ 2017-09-07 11:24 炎泽 编辑
摘要:虽然前端一般情况下并不需要计算算法复杂度,但了解一下还是相当有必要的 时间复杂度 1.时间频度 由于算法执行的时间无法计算,为评判算法执行工作量,将语句执行的次数称为时间频度,记为T(n) 2.时间复杂度 n称为问题的规模,当n不断变化时,T(n)也会不断变化,为了表示其呈现的规律,我们引入时间复杂 阅读全文
posted @ 2017-09-06 18:19 炎泽 编辑
摘要:table 1. 宽高由内容撑开 2.独占一行 3.可设置宽高 4.可设置margin、padding inline-table 与display: table大体一致,区别在于不独占一行,为行内元素 table-row 1.宽高由内容撑开,但当父元素为display:table(相当于table) 阅读全文
posted @ 2017-09-06 15:34 炎泽 编辑
摘要:input[type='file']的accept属性用来指定上传文件的MIME类型。 将其设为accept= 'image/*',顾名思义,过滤掉所有非图片文件, 但在实际操作中,发现有时会出现响应缓慢的问题,特别是在chrome与Safari,IE与firefox则没有此问题。 搜索过后发现: 阅读全文
posted @ 2017-09-05 09:49 炎泽 编辑

点击右上角即可分享
微信分享提示