- 博客(78)
- 资源 (2)
- 收藏
- 关注
原创 ES6和ES5继承
文章目录一、ES5继承详解1.原型链继承2.借用构造函数(apply和call方法)3.组合继承4.原型式继承5.寄生式继承6.寄生组合式继承二、ES6继承详解1.class的继承一、ES5继承详解Javascript利用原型链的特性来实现继承,就是通过将子类构造函数的原型作为父类构造函数的实例,这样就连通了子类-子类原型-父类, 原型链的特点就是逐层查找,从子类开始一直往上直到所有对象的原型...
2019-10-24 11:03:16 489
转载 Https中间人攻击
Https中间人攻击https协议由 http + ssl 协议构成,具体的链接过程可参考SSL或TLS握手的概述中间人攻击过程如下:服务器向客户端发送公钥。攻击者截获公钥,保留在自己手上。然后攻击者自己生成一个【伪造的】公钥,发给客户端。客户端收到伪造的公钥后,生成加密hash值发给服务器。攻击者获得加密hash值,用自己的私钥解密获得真秘钥。同时生成假的加密hash值,发给服...
2019-10-15 18:29:04 417
转载 JS链表反转
链表反转/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @return {ListNode} */var reverseL...
2019-10-08 20:12:04 1214
转载 如何实现一个深拷贝(考虑循环引用对象、和symbol类型)
文章目录第一步:简单实现第二步:拷贝数组第三步:循环引用1、使用哈希表2、使用数组第四步:拷贝 Symbol第一步:简单实现其实深拷贝可以拆分成 2 步,浅拷贝 + 递归,浅拷贝时判断属性值是否是对象,如果是对象就进行递归操作,两个一结合就实现了深拷贝。根据上篇文章内容,我们可以写出简单浅拷贝代码如下。// 木易杨function cloneShallow(source) { v...
2019-10-07 11:51:57 6812
原创 拼多多面经——前端
文章目录一面1、HTML新特性2、CSS实现一个正方形到长方形动画效果3、promise用法 缺点 优点4、对象的扩展5、数据的双向绑定6、Vuex7、vue-router8、react 生命周期9、 虚拟 DOM与虚拟dom差别10、删除一个dom11、VS Code、WebStorm连个编译器的差别12、使用Git和SVN时候,觉得有什么各自的优缺点13、HighWay 平台是干什么的14、有...
2019-09-22 11:01:54 985
原创 涂鸦智能校招——前端
文章目录1、你怎理解原型的2、css z-index理解3、缓存的key有哪些4、cookie 用法5、map set 类型 与object区别6、generator与async await区别7、css水平垂直居中哪些方法8、js运行机制 举例说明9、有自己写过组件吗?封装过组件吗?10、vuex11、vue-router 模式哪些12、平时学习方式哪些?13、数组 中push一个 数据 试图更...
2019-09-22 10:53:45 1609
原创 new function()理解
好久没更新啦~一、背景朋友给我发了一个题,我的答案和正确答案刚好相反。惊!正确答案是:false和true接下来我讲一下我对这道题所涉及的知识点的理解说明:只要 new 表达式之后的 constructor 返回(return)一个引用对象(数组,对象,函数等),都将覆盖new创建的匿名对象。如果返回(return)一个原始类型(无 return 时其实为 return 原始类型...
2019-09-06 19:43:50 5217 1
转载 reduce用法
文章目录1、语法2、实例解析 initialValue 参数3、reduce的简单用法4、reduce的高级用法转发:https://www.jianshu.com/p/e375ba1cfc47reduce()方法可以搞定的东西,for循环,或者forEach方法有时候也可以搞定,那为啥要用reduce()?这个问题,之前我也想过,要说原因还真找不到,唯一能找到的是:通往成功的道路有很多,但...
2019-07-25 19:23:21 798
原创 路由知识点总结
文章目录一、前端路由跳转基本原理1、什么是路由2、hash路由3、history路由4、memory路由5、hash路由和history的区别6、三者路由适用场景今天看了到一篇关于100道前端面试题的文章,看完的感悟是,我太菜了。。。自己学的东西都太基础了,然而这些基础的知识掌握的也不够扎实。。。难受的一批,现在开始一点一点积累吧。一、前端路由跳转基本原理1、什么是路由路由是根据不同的u...
2019-07-11 19:12:57 1469
原创 函数声明式和函数表达式区别
javascript中声明函数的方法有两种:函数声明式和函数表达式.一、区别如下:1).以函数声明的方法定义的函数,函数名是必须的,而函数表达式的函数名是可选的。(函数声明会被提升到当前作用域的顶部,函数表达式则不会)2).以函数声明的方法定义的函数,函数可以在函数声明之前调用,而函数表达式的函数只能在声明之后调用。3).以函数声明的方法定义的函数并不是真正的声明,它们仅仅可以出现在全局中...
2019-06-17 19:51:51 12110 2
原创 【Vue】 生命周期
VUE生命周期一、生命周期钩子函数二、钩子函数详解1、 在beforeCreate和created钩子函数之间的生命周期2、created钩子函数和beforeMount间的生命周期3、beforeMount和mounted 钩子函数间的生命周期4、Mounted5、destroyed一、生命周期钩子函数vue的生命周期就是从创建到销毁的过程中,在某个特定的时间点自动执行的函数,一共有8个生命...
2019-05-08 15:02:30 880
原创 安恒面试总结——前端开发实习生
一、自我介绍简单讲了一下,来自学校专业, 自己何时学的前端,跟导师的项目经历。二、面试官问的问题1、作用域(全局和局部的)这里他并不是直接问作用域是什么。而是给我三个题,问我输出的结果是什么,这几道题,不仅仅考了作用域,还掺杂了匿名函数的知识点,2、匿名函数同上3、数组去重我先回答了两种ES5的方法,indexOf和forEach的,但是说没用,他让我写下来。写完了他说那你还知道其...
2019-04-28 10:16:25 3202 7
原创 【ES6】Set的属性及方法
文章目录1、set方法没有重复元素2、set实例的属性和方法3、Set 结构的实例有四个遍历方法,可以用于遍历成员。4、for … of…1、set方法没有重复元素// 去除数组的重复成员[...new Set(array)]// 例一const set = new Set([1, 2, 3, 4, 4]);[...set]// [1, 2, 3, 4]// 例二const...
2019-04-06 15:29:35 5629
原创 匿名函数
一、匿名函数的代码模式1、错误模式:其无法工作,浏览器会报语法错。function(){ alert(1); }();2、函数字面量:首先声明一个函数对象,然后执行它。(function(){ alert(1); } ) ( );3、优先表达式:( function(){ alert(2); } ( ) );4、void操作符:void function(){ alert...
2019-04-06 10:43:23 7306
原创 JavaScript——遍历函数
JavaScript中常用的遍历函数1、for循环2、forEach循环3、map函数,遍历数组每个元素,并回调操作,需要返回值,返回值组成新的数组,原数组不变4、filter函数, 过滤通过条件的元素组成一个新数组, 原数组不变5. some函数,遍历数组中是否有符合条件的元素,返回Boolean值6. every函数, 遍历数组中是否每个元素都符合条件, 返回Boolean值1、for循环...
2019-04-01 21:34:50 5611
原创 ES6——解构
文章目录一、什么是解构二、解构数组1、变量声明并赋值时的解构2、变量先声明后赋值时的解构3、默认值4、交换变量5、解析一个从函数返回的数组6、将剩余数组赋值给一个变量7、嵌套数组解构8、用正则表达式匹配提取值9、for循环解构三、解构对象1、基本赋值2、无声明赋值3、给新的变量名赋值4、默认值5、给新的变量命名并提供默认值6、对象传参解构7、解构嵌套对象和数组8、For of 迭代和解构一、什么...
2019-04-01 16:29:25 1220
原创 ES6——扩展运算符(...)
文章目录一、扩展运算符(...)二、扩展运算符的应用1、合并数组2、与解构赋值结合3、字符串转数组4、实现了 Iterator 接口的对象5、Map 和 Set 结构, Generator 函数6、替代数组的 apply 方法一、扩展运算符(…)扩展运算符( spread )是三个点(…).功能是把数组或类数组对象展开成一系列用逗号隔开的参数序列,与rest运算符刚好相反。主要一下作用:...
2019-04-01 14:59:27 2198
原创 ES6——模板字符串
一、背景1.传统用法:之前我们也可以使用JavaScript输出模版字符串,通常是下面这样的:$('#result').append( 'There are <b>' + basket.count + '</b> ' + 'items in your basket, ' + '<em>' + basket.onSale + '</em...
2019-04-01 13:13:39 2038
原创 ES6知识点归纳
ES6知识点归纳目录博客导航ES6之let、const、var区别ES6之(…)用法ES6之字符串模板ES6之变量的解构赋值
2019-04-01 12:47:14 6150 1
原创 JavaScript知识归纳——面试题
JavaScript面试题总结JavaScript知识点1、 JavaScript中settimeout与setinteval两个函数的区别?2、 编写JavaScript脚本生成1-6之间的整数?3、 在JavaScript脚本中,isNaN的作用是什么?4、 JavaScript中获取某个元素有哪几种方式?5、 Ajax的优缺点都有什么?6、 简述一下Ajax的工作原理。7、 JavaScri...
2019-03-28 21:11:06 631
原创 【JavaScript】DOM事件和监听
一、将事件绑定到元素身上的三种方法:1、HTML事件处理程序(不推荐使用)<a "hide()">2、传统的DOM事件处理程序即在目标DOM事件的基础上绑定事件。如果在声明函数时加上括号,函数会立即调用,去掉括号,函数不会立即调用。function change(){ //code}var name = document.getElementById("name...
2019-03-28 20:47:33 1501
原创 JavaScript知识点归纳
目录博客导航JavaScript之数组去重的几种常见方法https://blog.csdn.net/qq_41846861/article/details/88572909JavaScript之正则表达式https://blog.csdn.net/qq_41846861/article/details/86715956JavaScript之call()和appl...
2019-03-28 17:47:58 1485
原创 axios设置token到请求头
文章目录一、问什么要设置请求头到token?二、用法成功如下图三、总结一、问什么要设置请求头到token?当输入用户名及密码,登录成功后,后台会返回一个token,在之后发送的请求都要带上这个token,因为后台设置了拦截,如果token一致,则允许访问,否则请求不成功。二、用法加一个http request拦截器通过window.localStorage.getItem("acc...
2019-03-27 19:27:43 67160 5
原创 (笔记10)React共享单车后台管理系统开发——城市管理
城市管理效果一、基础页面拆分Easy Mock城市管理的数据接口:顶部子组件一:选择表单componentDidMount():实例代码二、开通城市——弹框功能三、实例代码效果一、基础页面拆分Easy Mock城市管理的数据接口:/open_city{ "code": 0, "msg": "", "result": { "item_list|10": [{ ...
2019-03-22 20:52:13 1069 5
原创 (笔记9)React共享单车后台管理系统开发——富文本编辑
表单——富文本编辑器一、安装插件二、富文本编辑器实现富文本编辑器Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器效果演示:一、安装插件react-draft-wysiwyg: 文本编辑器插件draftjs-to-html:文本转换为html的插件yarn add react-draft-wysiwyg draftjs-to-html...
2019-03-22 12:05:01 606
原创 MVC与MVVM区别
1.MVVMMvvm定义MVVM是Model-View-ViewModel的简写。即模型-视图-视图模型。【模型】指的是后端传递的数据。【视图】指的是所看到的页面。【视图模型】mvvm模式的核心,它是连接view和model的桥梁。它有两个方向:一是将【模型】转化成【视图】,即将后端传递的数据转化成所看到的页面。实现的方式是:数据绑定。二是将【视图】转化成【模型】,即将所看到的页面转化成后端的数...
2019-03-19 14:28:21 311
转载 【Linux】Linux文件系统目录配置及常见命令
1、Linux的文件系统目录配置要遵循FHS规范,规范定义的两级目录规范如下:/home 每个账号在该目录下都有一个文件夹,进行数据的管理/usr 有点像windows的program files和winNT结合的目录,主要包括系统的主要程序、本机端额外安装的软件、图形接口所需要的文档、额外的函数库、共享目录与文件等/bin /usr/bin /usr/local/bin 存放执行...
2019-03-17 20:23:20 496
原创 Glup和Webpack区别
gulp与webpack的区别常有人拿gulp与webpack来比较,知道这两个构建工具功能上有重叠的地方,可单用,也可一起用,但本质的区别就没有那么清晰。gulpgulp强调的是前端开发的工作流程,我们可以通过配置一系列的task,定义task处理的事务(例如文件压缩合并、雪碧图、启动server、版本控制等),然后定义执行顺序,来让gulp执行这些task,从而构建项目的整个前端开发流程...
2019-03-17 20:08:17 1517
原创 React和Vue差异
Vue和React两个JavaScript框架都是当下比较受欢迎的,他们两者之间的区别有哪些,各自的优缺点是什么。大家都是知道React是由Facebook创建的JavaScript UI框架。它支撑着包括Instagram在内的大多数Facebook网站。React与当时流行的jQuery,Backbone.js和Angular 1等框架不同,它的诞生改变了JavaScript的世界。其中...
2019-03-17 19:24:48 513
转载 如何对网页的加载进行性能优化?
1、背景介绍为什么要对网站进行性能优化?网站的访问量及用户的持久性其实在一定程度上取决于其性能,如果一个网站响应耗时久,动画卡顿,占用大量的cpu等,往往就会导致用户流失。尤其是app及微信端应用,可以这么说,如果页面打开都要超过4秒,这体验绝对差。作为一个开发者,是不允许出现这种情况的,那么该如何提高页面的性能呢?大致的网站优化性能步骤不外乎减少HTTP请求次数,减少DNS访问,减...
2019-03-17 17:04:46 676
转载 如何在页面上实现一个圆形的可点击区域
一.通过map加area首先先给出一个小demo(demo1)吧:<img src="../imgs/test.jpg" width="200" border="0" usemap="#Map" /><map name="Map" id="Map"> <area shape="circle"
2019-03-16 20:08:04 3986 2
原创 【CSS】css清除浮动的几种方法
使用了float之后,父级盒子的高度变为0了。我们来写一个例子来看一下,创建一个父级div,并设置border属性,然后下边创建两个子元素span,并设置浮动。具体代码如下所示:效果:由上图可以看出,在给span添加了float之后,父级元素div的高度就变成了0(红色框)。我们有以下几种方式来解决这个问题1、在标签结尾处加空div标签 clear:both源代码:效果:...
2019-03-16 17:42:27 13880 1
转载 【HTML】display:none和visibility:hidden两者的区别
参考blog:https://blog.csdn.net/qq_38128179/article/details/80794397使用css让元素不可见的方法有很多种,裁剪、定位到屏幕外边、透明度变换等都是可以的。但是最常用两种方式就是设置元素样式为display: none或者visibility: hidden。很多公司的面试官也常常会问面试者这两者之间的区别。1、display与元素...
2019-03-16 16:36:30 1644
原创 【HTML】div显示与隐藏相关内容
隐藏div的几种常见方法1.display:none;2.visibility:hidden;3.background-color:transparent;或者设成与背景一样的颜色即可4.opacity来设置不透明级别,注意兼容性filter…5.给div一个margin负值,这个负值恰好等于div自身的高度或宽度6.设置两个大小一样的div,第一个左浮动,第二个不浮动,即可将第二个...
2019-03-16 16:29:32 9701
原创 HTTP请求返回状态码意义(详)
所有HTTP请求返回状态码意义100 Continue 继续。客户端应继续其请求101 Switching Protocols 切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议,例如,切换到HTTP的新版本协议200 OK 请求成功。一般用于GET与POST请求201 Created 已创建。成功请求并创建了新的资源202 Accepted 已接受。已经接受请求,但未处...
2019-03-16 14:35:15 3176
原创 【JavaScript】JS数组去重的几种常见方法
JS数组去重的几种常见方法一、简单的去重方法// 最简单数组去重法/** 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中* IE8以下不支持数组的indexOf方法* */function uniq(array){ var temp = []; //一个新的临时数组 for(var i = 0; i &lt; array.length; i++){ ...
2019-03-15 14:02:20 1648
原创 阿里巴巴历年在线笔试题汇总
阿里巴巴在线笔试题汇总2013阿里巴巴前端在线笔试题1、现有代码如下:2、如果你现在使用的是 Google Chrome 或 Apple Safari,如何让 input 元素在默认情况下显示 “alipay WD Team”,而在光标移入后则显示空白?4、请写出至少5个html5新增的标签,并说明其语义和应用场景5、在CSS样式中常使用px、em两种长度单位,各有什么优劣,在表现上有什么区别?2...
2019-03-12 21:04:33 22248
原创 CSS知识归纳
面试题总结CSS知识点1、HTML中定义表格的宽度用80px与80%的区别是什么?2、 简述DIV元素和SPAN元素的区别。3、 在HTML页面布局中,position的值有哪几种?默认值又是什么?4、 怎样使一个宽为200px和高为200px的层垂直居中于浏览器中?写出CSS样式代码。5、 CSS规范中,.(句点)后面跟一个名称代表什么含义?#(井号)后面跟一个名称代表什么含义?如果要对一个元素...
2019-03-12 19:59:04 1518
原创 【CSS】利用CSS伪类选择器实现三角形
项目中案例:.breadcrumb{ height: 40px; line-height: 40px; padding: 0 20px; border-top: 1px solid #f9c700; .breadcrumb-title{ text-align: center; ...
2019-02-26 19:17:19 6831
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人