- 博客(48)
- 收藏
- 关注
转载 js 函数的调用模式
1、函数调用 调用一个函数将暂停当前函数的执行,传递控制权和参数给新函数。除了函数声明时定义的形参,每个函数还接受两个附加的参数:this和arguments(arguments并不是一个真正的数组,它拥有length属性,但它缺少数组的所有方法)。参数this在面向对象编程中非常重要,它的值取决于调用的模式。在js中一共有四种调用模式:方法调用模式、函数调用模式、构造器调用模式和...
2019-03-15 11:40:49 246
转载 JS中创建对象的几种方式
每一个对象都是引用类型创建的。一、工厂模式function createPerson(){ var o=new Object(); o.name=name; o.sex=sex; o.sayName=function(){ alert(this.name); } return o;} var pe...
2019-03-15 11:27:24 148
转载 理解js继承的6种方式
想要继承,就必须要提供个父类(继承谁,提供继承的属性) 一、原型链继承 重点:让新实例的原型等于父类的实例。 特点:1、实例可继承的属性有:实例的构造函数的属性,父类构造函数属性,父类原型的属性。(新实例不会继承父类实例的属性!) 缺点:1、新实例无法向父类构造函数传参。 2、继承单一。 3、所有新实例都会...
2019-03-15 11:18:45 220
转载 Vue面试常问知识点整理
一、对于MVVM的理解?MVVM 是 Model-View-ViewModel 的缩写。Model代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑。View代表UI 组件,它负责将数据模型转化成UI 展现出来。ViewModel监听模型数据的改变和控制视图行为、处理用户交互,简单理解就是一个同步View 和 Model的对象,连接Model和View。在MVVM架构下,Vi...
2019-03-07 09:20:19 331
转载 从URL输入到页面展现到底发生什么
打开浏览器从输入网址到网页呈现在大家面前,背后到底发生了什么?经历怎么样的一个过程?先给大家来张总体流程图,具体步骤请看下文分解!从URL输入到页面展现总体来说分为以下几个过程: DNS 解析:将域名解析成 IP 地址 TCP 连接:TCP 三次握手 发送 HTTP 请求 服务器处理请求并返回 HTTP 报文 浏览器解析渲染页面 ...
2019-03-07 09:20:12 102
转载 前端面试总结 :http、html和浏览器篇
1.http和httpshttps的SSL加密是在传输层实现的。(1)http和https的基本概念http: 超文本传输协议,是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。https: 是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HT...
2019-03-07 07:43:11 190
转载 跨域几种方式
一、什么是跨域JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象。那什么是跨域呢,简单地理解就是因为JavaScript同源策略的限制, a.com 域名下的js无法操作 b.com 或是 c.a.com 域名下的对象。当协议、子域名、主域名、端口号中任意一个不相同时,都算作不同域。不同域之间相互请求资源,就算作“跨域”。例如:http://www.abc.com/i...
2019-03-07 07:42:42 98
转载 用nodejs搭建代理服务器步骤
前端开发者在工作中常常遇到跨域的问题,一般我们遇到跨域问题主要使用以下办法来解决:1、jsonp2、cors3、配置代理服务器。jsonp不是很灵活,只能发送get请求,不能发送psot请求,而cors虽然可以支持多种请求格式,但是如果请求携带cookie的话,还需要服务端和客户端分别配置一下,个人感觉也很麻烦。相对于前两种,使用代理服务器解决跨域问题就简单了好多。浏...
2019-03-07 07:42:33 2745
转载 关于web前端性能优化总结
1、从DOM结构和标签上来优化·使用语义化的标签,代码清晰简洁;·减少Dom节点,增加渲染速度;·使用W3C标准书写闭合小写的标签;·给图片和table指定宽高,避免缩放;·防止src和href值为空,当为空时,浏览器会把当前页面当做属性值重新加载;·css在头部位置,js在body底部位置;2、从CSS样式上来优化·使用link加载样式而不是@import(...
2019-03-06 09:33:10 138
转载 Web前端性能优化常见面试题
一般说来,web前端指网站业务逻辑之前的部分,包括浏览器加载、网站视图模型、图片服务、CDN服务等,主要优化手段有浏览器访问、使用反向代理才、CDN等。1、减少http请求,合理浏览器缓存2、启用压缩:HTML、CSS、javascript文件启用GZip压缩可达到较好的效果3、CSS Sprites:合并 CSS图片,减少请求数的又一个好办法。4、LazyLoad Images:在页面刚...
2019-03-06 09:33:03 6228
转载 前端常见面试题总结——ES6部分
1.es6熟悉吗,说几个es6的新增方法(1)新增声明命令let和const在es6中通常用let和const来声明,let表示变量、const表示常量。特点:let和const都是块级作用域。以{}代码块作为作用域范围 只能在代码块里面使用。不存在变量提升,只能先声明再使用,否则会报错。在代码块内,在声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死...
2019-03-06 09:32:55 721
转载 前端性能优化总结
概述如今的前端开发已经从严重依赖后端演变成了node做中间层,MVVM框架进行服务端渲染做view层。性能优化也变得异常重要,我主要对以下几个方面做了几个总结:performance面板。 雅虎军规。 首屏性能优化。 html,css和js的性能优化。 PC,移动端和服务端的性能优化。 react和vue框架的性能优化。 前端工业化的性能优化。虽然做不到面面俱到,但是过一段时...
2019-03-06 09:32:45 165
转载 前端面试100题
position的值, relative和absolute分别是相对于谁进行定位的?§absolute:生成绝对定位的元素, 相对于最近一级的 定位不是 static的父元素来进行定位。§fixed(老IE不支持)生成绝对定位的元素,通常相对于浏览器窗口或 frame 进行定位。§relative生成相对定位的元素,相对于其在普通流中的位置进行定位。§static...
2019-03-06 09:32:34 338
转载 前端安全面试
前端安全XSSxss: 跨站脚本攻击(Cross Site Scripting)是最常见和基本的攻击 WEB 网站方法,攻击者通过注入非法的 html 标签或者 javascript 代码,从而当用户浏览该网页时,控制用户浏览器。xss 主要分为三类:1、DOM xss : DOM即文本对象模型,DOM通常代表在html、xhtml和xml中的对象,使用DOM可以允许程序和...
2019-03-06 09:32:22 228
转载 web前端面试真题
【HTML + CSS 】1.对WEB标准以及W3C的理解与认识标签闭合、标签小写、不乱嵌套,提高搜索机器人搜索几率;使用外链css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件,容易维 护、改版方便,不需要变动页面内容、提供打印版本而不需要复制内容、提高网站易用性;2.xhtml和html有什么区...
2019-03-06 09:32:12 769
转载 vue面试题
vue与angular的区别?1.vue仅仅是mvvm中的view层,只是一个如jquery般的工具库,而不是框架,而angular而是mvvm框架。2.vue的双向邦定是基于ES5 中的 3.getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。因此,vue在性能上更高效,但是代价是对于ie9以下的浏览器无法支持。4...
2019-03-06 09:32:01 161
转载 vue基础面试题
1、active-class 是哪个组件的属性?嵌套路由怎么定义 (1)、active-class 是 vue-router 模块的 router-link 组件的属性 (2)、使用 children 定义嵌套路由2、怎么定义 vue-router 的动态路由? 怎么获取传过来的值 在 router 目录下的 index.js 文件中,对 path 属性加上 /:id。 ...
2019-03-06 09:31:55 295
转载 vue基础面试题
1:什么是mvvm?MVVM是Model-View-ViewModel的缩写。mvvm是一种设计思想。Model 层代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑;View 代表UI 组件,它负责将数据模型转化成UI 展现出来,ViewModel 是一个同步View 和 Model的对象。在MVVM架构下,View 和 Model 之间并没有直接的联系,而是通过View...
2019-03-06 09:31:48 176
转载 工作中常用到的ES6语法
一、let和const在JavaScript中咱们以前主要用关键var来定义变量,ES6之后,新增了定义变量的两个关键字,分别是let和const。对于变量来说,在ES5中var定义的变量会提升到作用域中所有的函数与语句前面,而ES6中let定义的变量则不会,let声明的变量会在其相应的代码块中建立一个暂时性死区,直至变量被声明。let和const都能够声明块级作用域,用法和var是...
2019-03-05 09:08:06 361
原创 JavaScript数组去重(12种方法)
一、利用ES6 Set去重(ES6中最常用)function unique (arr) { return Array.from(new Set(arr))}var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a'...
2019-03-05 09:07:57 448
原创 JavaScript字符串操作方法大全(ES5)
一、charAt()返回在指定位置的字符。var str="abc"console.log(str.charAt(0))//a二、charCodeAt()返回在指定的位置的字符的 Unicode 编码。var str="abc" console.log(str.charCodeAt(1))//98三、concat()连接字符串。 var a = "abc...
2019-03-05 09:07:44 1227
原创 JavaScript常用数组操作方法(ES6新增)
1、find():传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它,并且终止搜索。const arr = [1, "2", 3, 3, "2"]console.log(arr.find(n => typeof n === "number")) // 12、findIndex():传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它的下标,终止搜...
2019-03-05 09:07:38 233
原创 JavaScript常用数组操作方法(ES5)
一、concat()concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,仅会返回被连接数组的一个副本。var arr1 = [1,2,3];var arr2 = [4,5];var arr3 = arr1.concat(arr2);console.log(arr1); //[1, 2, 3]console.log(arr3); //[1, 2, 3, 4, 5...
2019-03-05 09:07:30 323
原创 几种常见的 CSS 布局
本文将介绍如下几种常见的布局: 单列布局 两列自适应布局 圣飞布局和双飞翼布局 伪等高布局 粘连布局 一、单列布局常见的单列布局有两种: header,content和footer等宽的单列布局 header与footer等宽,content略窄的单列布局 1.如何实现对于第一种,先通过对header,cont...
2019-03-05 09:07:24 226
转载 使用 h5 新特性,轻松监听任何 App 自带返回键
1、前言如今h5新特性、新标签、新规范等有很多,而且正在不断完善中,各大浏览器商对它们的支持,也是相当给力。作为前端程序员,我觉得我们还是有必要积极关注并勇敢地加以实践。接下来我将和各位分享一个特别好用的h5新特性(目前也不是特别新),轻松监听任何App自带的返回键,包括安卓机里的物理返回键,从而实现项目开发中进一步的需求。2、起因大概半年前接到pm一需求,用纯h5实现多audio的播...
2019-03-05 09:07:16 280
原创 CSS设置居中的方案总结
块级元素居中 html代码部分<div class="parent"> <div class="child">child</div></div>行内元素居中 html代码部分<div class="parent"> <span class="
2019-03-05 09:07:08 116
转载 如何精确统计页面停留时长
1.背景页面停留时间(Time on Page)简称 Tp,是网站分析中很常见的一个指标,用于反映用户在某些页面上停留时间的长短,传统的Tp统计方法会存在一定的统计盲区,比如无法监控单页应用,没有考虑用户切换Tab、最小化窗口等操作场景。 基于上述背景,重新调研和实现了精确统计页面停留时长的方案,需要 兼容单页应用和多页应用,并且不耦合或入侵业务代码。2.分析我们可以把一个页面生命周期...
2019-03-05 09:06:58 1936
原创 原生js—信息滚动显示效果
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2019-03-04 11:06:02 1052
原创 原生js-Tab选项卡点击切换效果
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2019-03-04 10:54:12 607
原创 jquery-鼠标经过导航条,显示二级下拉菜单
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2019-03-04 10:36:43 5910 1
原创 CSS-鼠标经过文字底部下划线动画
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2019-03-04 09:49:16 3038
原创 css-div边框动画
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2019-03-04 09:36:25 1304
原创 js-网页title标题文字滚动显示效果
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2019-03-04 09:22:35 3722
转载 图片性能优化方法
围绕着这3个方向来进行优化的:缩短请求响应时间、减少请求数、减少请求大小。一、缩短请求响应时间1 域名收敛我们明白,页面资源请求过程是这样的:DNS解析 --> 请求等待 --> 发送http请求 --> 服务器响应 --> 接收数据我们明白,典型的DNS解析过程是这样的:浏览器缓存 --> Hosts文件/系统缓存 --> 本地域名服务...
2019-03-04 09:09:03 679
转载 前端开发常用代码片段(一)
一、预加载图像如果你的网页中需要使用大量初始不可见的(例如,悬停的)图像,那么可以预加载这些图像。$.preloadImages = function () { for (var i = 0; i < arguments.length; i++) { $('<img>').attr('src', arguments[i]); }}$....
2019-03-04 09:08:54 145
转载 前端开发常用代码片段(二)
一、浮点数取整const x = 123.4545;x >> 0; // 123~~x; // 123x | 0; // 123Math.floor(x); // 123注意:前三种方法只适用于32个位整数,对于负数的处理上和 Math.floor是不同的。Math.floor(-12.53); // -13-12.53 | 0; // -12二、生...
2019-03-04 09:08:45 148
转载 值得掌握的javascript代码片段
1.范围内的随机数使用Math.random()生成一个随机值,使用乘法将其映射到所需的范围。const randomInRange = (min, max) => Math.random() * (max - min) + min;// randomInRange(2,10) -> 6.02113632850870052.随机化数组的顺序 使用sort...
2019-03-04 09:08:27 148
转载 javascript性能优化技巧
本文从加载、上下文、解析、编译、执行和捆绑等多个方面来讲解 JavaScript 的性能优化技巧,以便让更多的前端开发人员掌握这方面知识。什么是高性能的 JavaScript 代码?尽管目前没有高性能代码的绝对定义,但却存在一个以用户为中心的性能模型,可以用作参考:RAIL模型。响应如果你的应用程序能在100毫秒内响应用户的操作,那么用户会认为该响应为即时的。这适用于可点...
2019-03-03 20:09:42 296
转载 前端性能优化-雅虎军规总结
雅虎军规首先,我们先来看看“雅虎军规”的35条: 尽量减少 HTTP 请求个数——须权衡 使用CDN(内容分发网络) 为文件头指定 Expires 或 Cache-Control ,使内容具有缓存性。 避免空的 src 和 href 使用 gzip 压缩内容 把 CSS 放到顶部 把 JS 放到底部 避免使用 CSS...
2019-03-03 20:03:34 244
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人