随笔分类 -  前端

从js 讲解时间复杂度和空间复杂度
摘要:1. 博客背景 今天有同事在检查代码的时候,由于函数写的性能不是很好,被打回去重构了,细思极恐,今天和大家分享一篇用js讲解的时间复杂度和空间复杂度的博客 2. 复杂度的表示方式 之前有看过的,你可能会看到这么一串东西 T(n) = O(f(n)) S(n) = O(f(n)) 这个叫做大O表示法, 阅读全文
posted @ 2019-08-04 15:02 永不言退 阅读(1840) 评论(0) 推荐(1)
前端常见本地存储
摘要:说一说常用得本地存储方法 cookie localStorage sessionStorage cookie cookie这个东西我觉得对于前端来讲都不会很陌生,浏览器都会支持cookie HTTP cookie 在最初得时候适用于客户端存储会话信息用的,在我们发送http请求得时候 ,响应头会包含 阅读全文
posted @ 2019-07-28 19:57 永不言退 阅读(2694) 评论(1) 推荐(0)
js深入(三)作用域链与闭包
摘要:在之前我们根绝对象的原型说过了js的原型链,那么同样的js 万物皆对象,函数也同样存在这么一个链式的关系,就是函数的作用域链 作用域链 首先先来回顾一下之前讲到的原型链的寻找机制,就是实例会先从本身开始找,没有的话会一级一级的网上翻,直到顶端没有就会报一个undefined 同样的js的机制就是这样 阅读全文
posted @ 2019-07-05 11:52 永不言退 阅读(701) 评论(0) 推荐(3)
js深入(二)函数的执行与上下文
摘要:这一篇简单的说一说js的函数执行和js的执行上下文的概念,之前在我的博客里边也提到过 "js的堆栈队列" , 这一篇打算单独的拿出来说一说 是什么是js的执行上下文 一段可以执行的代码在被执行的时候,会创建一个函数的执行上下文 执行上下文里边有三个重要的属性分别是 变量对象 作用域链 this指向 阅读全文
posted @ 2019-07-03 13:27 永不言退 阅读(1912) 评论(0) 推荐(0)
js深入(一)从原型理解原型链
摘要:构造函数创建一个对象 function Person() { } var person = new Person(); person.name = 'zhangsan'; console.log(person.name) // zhangsan 上边这个例子,我们通过构造函数创建了一个实例,从这个实 阅读全文
posted @ 2019-06-30 20:13 永不言退 阅读(427) 评论(0) 推荐(0)
初识markdown
摘要:什么是markdown markdown 语法 首先是标题用 表示 标题 比如说一个 是一号标题,两个 是二号标题, 以此类推最多到六号 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 分割线 三个以上的 或者 表示一个分割线 字体 代表斜体 斜体 代表粗体 粗体 ~~表示删除,会有一个 阅读全文
posted @ 2019-06-27 21:20 永不言退 阅读(272) 评论(1) 推荐(0)
Http 协议详解
摘要:什么是http协议 (百度百科) http 特性 HTTP 协议构建于 TCP/IP 协议之上,是一个应用层协议,默认端口号是 80 HTTP 是无连接无状态的 既然http是基于tcp协议的那么简单说一下Tcp协议 TCP 提供一种面向连接的、字节流服务,也就是说长连接,具体可以参考一下聊天室 T 阅读全文
posted @ 2019-06-27 14:24 永不言退 阅读(370) 评论(0) 推荐(0)
js 隐式类型转换
摘要:js是一门弱类型的语言,他在声明变量的时候不需要指定类型,对变量赋值也没有类型的检测,所以js是非常的灵活的,但是有时候也会出现一些非常匪夷所思的问题 隐式类型转换定义 console.log(1+'1') 看这句代码 一个数字1 和一个字符串1 他们的类型是不同的 但是我们并没有对他进行任何的操作 阅读全文
posted @ 2019-06-18 12:52 永不言退 阅读(3994) 评论(0) 推荐(0)
跨域与常用解决方法
摘要:接触前端有几个月了,今天说一说我对前端跨域的认识和解决方案,其实在之前我对跨域并没有什么概念 只是听闻过这个恶名远扬的单词,直到有一天我遇到了他 什么是跨域 上边这一段话来自于MDN,反正在我看来这么一大段干(gou)净(pi)利(bu)落(tong)的话实在是很官方, 说白了跨域就是说 主机名(域 阅读全文
posted @ 2019-06-15 21:08 永不言退 阅读(935) 评论(0) 推荐(0)
js堆,栈与队列
摘要:栈的定义 栈的常用操作 栈中有两个基本的操作 推入 :从栈的顶端推入一个数据,依次往下推 弹出 :讲栈顶端的数据移除 栈的基本提点就是 先进后出,后进先出 除了头尾的节点,每个元素都有一个先驱和一个后继 对于栈的画面的理解,可以想象成一个步枪弹夹添加子弹和射击的过程 弹夹只有一个出入口进行推入和弹出 阅读全文
posted @ 2019-06-11 21:34 永不言退 阅读(1122) 评论(2) 推荐(2)
H5踩坑系列(一)
摘要:提到移动端适配,首先心里可能会问,我们为什么要做移动端的适配,怎么去做移动端端的适配 我们为什么要进行移动端的适配 首先一个页面在pc上边打开,是正常显示的,但是我们用手机打开的时候,由于手机的屏幕尺寸并不能完整的吧页面全部显示出来,就算是手动进行缩放也会出现比如说滚动条,页面布局错乱等等各种五花八 阅读全文
posted @ 2019-06-02 14:47 永不言退 阅读(500) 评论(0) 推荐(1)
js 的单线程与异步
摘要:js的单线程 从我们第一天接触js的时候我们就知道js是单线程的,且js是异步的,首先来看一下基本概念 什么是线程 举个最简单的例子 , 在我们电脑的任务管理器中你打开一个应用程序的时候 就会多一个进程,他代表了cpu能处理的单个任务。 线程是进程下的执行者,一个进程至少会开启一个线程(主线程),也 阅读全文
posted @ 2019-05-28 19:46 永不言退 阅读(1261) 评论(0) 推荐(1)
javascript原型链
摘要:咳咳。。。思考一秒钟怎么开始写第一句话,有点绕 嗯。。。。(五分钟后) 算了先上个图吧 那么这个prototype里边又是什么呢 我比较喜欢画图。。。。。。。。。。。 but 我发现object上边貌似还有__proto__,于是乎我打印了一下 这可能就是传说中没有对象的野指针吧。。。。 不过其实我 阅读全文
posted @ 2019-03-21 14:06 永不言退 阅读(109) 评论(0) 推荐(0)
简单工厂,工厂方法模式
摘要:简单工厂模式:又称为静态工厂方法模式。 在简单工厂模式中,可以根据参数的不同返回不同类的实例。 简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 例如 console.log(work2.eat("飞机")) console.log(work2.eat("飞机") 阅读全文
posted @ 2019-03-14 13:32 永不言退 阅读(185) 评论(0) 推荐(0)
js实现接口隔离
摘要:昨天公司培训了接口隔离,简单说一下 接口隔离:类间的依赖关系应该建立在最小的接口上。接口隔离原则将非常庞大、臃肿的接口拆分成更小具体的接口,这样客户讲会只需要知道他们感兴趣的方法。 接口隔离原则的目的是系统解开耦合,从而容易重构、更改和重新部署。 先贴一个错误示范 假设吧所有的方法都放在一个接口去实 阅读全文
posted @ 2019-03-01 13:32 永不言退 阅读(761) 评论(0) 推荐(0)
设计原则之依赖倒置js
摘要:依赖倒置 定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。(百科全书) 这个定义什么意思,太专业 感觉不像人话。。 什么叫高层模块,什么叫底层模块,什么叫抽象,什么叫细节,来画图 上边这个图是遵守了依赖倒置的,再放一个不遵守的 抽象 抽象说白了就是对于细 阅读全文
posted @ 2019-02-27 12:43 永不言退 阅读(387) 评论(0) 推荐(0)
面向对象设计原则—单一、开闭、里氏替换原则
摘要:昨天公司培训了面向对象设计原则—单一、开闭、里氏替换原则,听过之后感触很多,因为刚进公司,之前的代码毫无原则可言,乱乱糟糟的,之后按照规范重构, 很痛苦,感觉自己的代码就像是一坨翔,赶脚大姨夫捉急的都快提前了,代码规范这四个字真的是给我印象很深刻。 一。单一原则 定义:单一功能原则(Single r 阅读全文
posted @ 2019-02-25 13:31 永不言退 阅读(971) 评论(0) 推荐(0)
flex布局实现elment容器布局
摘要:一。flex布局是什么 flex布局,意为"弹性布局",是一种响应式的布局方法 采用 Flex 布局的元素,称为 Flex 容器,它的所有子元素自动成为容器成员。 先放上一个element 的组件实现demo用了一些flex布局 ,然后下边有关于flex的详细属性 先放效果图 贴上代码 然后说一下f 阅读全文
posted @ 2019-02-23 09:54 永不言退 阅读(3081) 评论(0) 推荐(1)
js 面向对象的三大特性
摘要:一。封装 所谓封装的概念,是不希望暴露函数中属性或者方法的地址,使外界不能操作,但是可以暴露特有的公有接口,可以利用接口操作。 封装在平日里用的比较多 ,去除了很多的代码复用 二。继承 在ECMAscript中描述了原型链的概念,并将原型链作为实现继承的主要方法,其基本思想就是利用原型让一个引用类型 阅读全文
posted @ 2019-02-22 13:10 永不言退 阅读(318) 评论(0) 推荐(0)