随笔分类 - 面试题
摘要:断点调试有两种打点方式 (1)控制台手动打点 (2)代码中添加 debugger打点 .
阅读全文
摘要:(1)手风琴效果 分析: (2)基础缓冲运动 接下来取整 原因: px为计算机识别的最小单位,1px无法再往下拆分。所以css如果取值200.5px,解析时计算机会自动将其改为200px注意:这里的数值并没有四舍五入计算,200.9px最后依然是200px 速度不能是小数,需要取整,所以接下来进行取
阅读全文
摘要:【一】运动基础 (2)基础运动案例 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>demo</title> <style type="text/css"> .parent{ width: 600px; height: 300p
阅读全文
摘要:(1)浏览器解析 URL 为了能让我们的知识层面看起来更有深度,我们应该考虑下面两个问题了: 从浏览器输入 URL 到渲染成功的过程中,究竟发生了什么? 浏览器渲染过程中,发生了什么,是不是也有重绘与回流? OK,兴致来了,我们就先从 浏览器解析 URL 看起,先来看看当用户输入 URL,到浏览器呈
阅读全文
摘要:在说浏览器渲染页面之前,我们需要先了解两个点,一个叫 浏览器解析 URL,另一个就是本章节将涉及的 重绘与回流: 重绘(repaint):当元素样式的改变不影响布局时,浏览器将使用重绘对元素进行更新,此时由于只需要 UI 层面的重新像素绘制,因此损耗较少。 常见的重绘操作有: 改变元素颜色 改变元素
阅读全文
摘要:说完防抖,下面我们讲讲节流,规矩就不说了,先上代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-sc
阅读全文
摘要:【前言】 在工作中,我们可能碰到这样的问题: 用户在搜索的时候,在不停敲字,如果每敲一个字我们就要调一次接口,接口调用太频繁,给卡住了。 用户在阅读文章的时候,我们需要监听用户滚动到了哪个标题,但是每滚动一下就监听,那样会太过频繁从而占内存,如果再加上其他的业务代码,就卡住了。 所以,这时候,我们就
阅读全文
摘要:前端模块规范有三种:CommonJs,AMD和CMD。 CommonJs用在服务器端,AMD和CMD用在浏览器环境 AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。 CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。 AMD:提前执行(异步加载:依赖先执行)+延迟执行
阅读全文
摘要:keep-alive 简介 keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。 用法也很简单: <keep-alive> <component> <!-- 该组件将被缓存! --> </component> </keep-alive> props incl
阅读全文
摘要:前言 据说阿里有一道面试题就是谈谈函数节流和函数防抖。 糟了,这可触碰到我的知识盲区了,好像听也没听过这2个东西,痛定思痛,赶紧学习学习。here we go! 概念和例子 函数防抖(debounce) 在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时。 看一个🌰(栗子): //模
阅读全文
摘要:AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。 CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。 这些规范的目的都是为了 JavaScript 的模块化开发,特别是在浏览器端的。目前这些规范的实现都能达成浏览器端模块化开发的目的。 在了解AMD,CMD规范前,我们先
阅读全文
摘要:我们在浏览器输入http://www.baidu.com想要进入百度首页,但是这是个域名,没法准确定位到服务器的位置,所以需要通过域名解析,把域名解析成对应的ip地址,然后通过ip地址查找目的主机。整个访问过程可以概括为: 域名解析 发起TCP三次握手建立连接 建立连接后发起http请求 服务器响应
阅读全文
摘要:任何一个对象都有toString()方法(默认继承自Object,自己可以重写),此方法返回一个字符串。 var sayYo = function () { alert("sayYo2!"); } console.log(sayYo); 输出打印值为函数体 科普: 实际打印的是:sayYo.toSt
阅读全文
摘要:今天在跟踪调试项目的代码时,发现在一个function中用到了这么一段[].slice.call(arguments, 1) 的代码。心中便起了疑惑,对于slice 和 call 的方法,倒是不怎么陌生,解析了下上面的那段代码,就是为了获取arguments 从1 开始到结尾的所有元素。只是觉得奇怪
阅读全文
摘要:简单理解就是函数内部不断调用自身 直接上代码: function dg(num){ if(num<1){ return 0; }else{ return num+dg(num-1) } } console.log(dg(6)) 最后输出值为21,记住加限制条件退出递归,不然会形成死循环... ...
阅读全文
摘要:类数组对象:arguments总所周知,js是一门相当灵活的语言。当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的东西里面,那么这到底是什么东西? 在js中万物皆对象,甚至数组字符串函数都是对象。所以这个叫做arg
阅读全文
摘要:今天同事问了道问题 var a=0,b=0; for(;a<10,b<7;++a,++b){ g=a+b } console.log(g) 问输出结果为多少??? 答案:12 这里要知道for循环的条件不管写多少个,必须都满足才可以,我们可以使用断点测试 第一次如下 点击下一个,让断点下传,到6时便
阅读全文
摘要:什么是函数柯里化? 百度百科: 在计算机科学中,柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术。通俗点说就是将一个函数拆分成多个函数,是固定部分参数,返回一个接受剩余参数的函数,也称为部分计算函数,
阅读全文
摘要:面向过程编程 Procedure Oriented Programming C语言是面向过程编程的,面向过程编程主要使用顺序、条件选择、循环三种基本结构来编写程序。 顺序:按照时间轴顺序完成每个处理; 条件选择:根据条件的成立与否执行不同的条件分支; 循环:根据一定的条件反复执行同样的代码; 面向过
阅读全文
摘要:【大纲】 【主体】 注意:先进先出 事件轮询: 事件初始化代码执行完毕后,开始执行事件队列里的待处理事件 .
阅读全文

浙公网安备 33010602011771号