Syzq

A blog that you won't read.


  • 首页

  • 分类

  • 归档

  • 标签

  • 关于

  • 搜索

imooc(五)

发表于 2017-08-18 | 分类于 前端杂烩
1. 渲染机制什么是DOCTYPE及作用 → 浏览器渲染过程 → 重排Reflow → 重绘Repaint → 布局Layout 1.1 什么是DOCTYPE及作用DTD (document type definition,文档类型定义)是一系列的语法规则,用来定义 XML 或 (X)HTML 的文件类型。浏览器会使用它来判断文档类型,决定使用何种协议来解析,以及切换浏览器模式。 DOCTYPE 是用来声明文档类型和 DTD 规范的,一个主要的用途便是文件的合法性验证。如果文件代码不合法,那么浏览器解析时就是出一些差错。 HTML 51<!DOCTYPE html> HTML 4.01 Strict12//该 DTD 包含所有 HTML 元素和属性,但不包括展示性的和弃用的元素(比如 font)。不允许框架集(Framesets)。<!DOCTYPE HTML PUBLI ...
阅读全文 »

imooc(四)

发表于 2017-08-18 | 分类于 前端杂烩
1.通信类什么是同源策略及限制 → 前后端如何通信 → 如何创建Ajax → 跨域通信的几种方式 1.1什么是同源策略及其限制浏览器同源政策及其规避方法 所谓”同源”指的是”三个相同:协议相同、域名相同、端口相同。指一段脚本只能读取来自同一来源的窗口和文档的属性。 同源策略限制从一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的关键的安全机制。 同源策略的目的,是为了保证用户信息的安全,防止恶意的网站窃取数据。 限制范围: 12345(1) Cookie、LocalStorage 和 IndexDB 无法读取。(2) DOM 无法获得。(3) AJAX 请求不能发送。 1.2 前后端如何通信一、Ajax(Aajx请求只能发给同源的网址) 二、WebSocket(该协议不实行同源政策,只要服务器支持,就可以通过它进行跨源通信。) 三、CORS(Cross- ...
阅读全文 »

imooc(三)

发表于 2017-08-18 | 分类于 前端杂烩
1.原型链类创建对象有几种方法 → 原型、构造函数、实例、原型链 → instanceof 的原理 → new 运算符 1.1 创建对象的方式一、字面量方式创建 1234var obj = { name : 'Beme', age : 21};//分号最好加上 二、通过构造函数创建 1234567function Person(name,age){ this.name=name; this.age=age;}var boy=new Person('小明',12);var girl=new Person('小红',10) 三、Object.create1234567var Person = { name : "Beme", age : 21, run: function() ...
阅读全文 »

互联网协议入门(二)

发表于 2017-08-17 | 分类于 零碎笔记
七、一个小结我们已经知道,网络通信就是交换数据包。电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从而实现两台电脑之间的通信。数据包的结构,基本上是下面这样: 发送这个包,需要知道两个地址: 123* 对方的MAC地址* 对方的IP地址 有了这两个地址,数据包才能准确送到接收者手中。但是,前面说过,MAC地址有局限性,如果两台电脑不在同一个子网络,就无法知道对方的MAC地址,必须通过网关(gateway)转发。 上图中,1号电脑要向4号电脑发送一个数据包。它先判断4号电脑是否在同一个子网络,结果发现不是(后文介绍判断方法),于是就把这个数据包发到网关A。网关A通过路由协议,发现4号电脑位于子网络B,又把数据包发给网关B,网关B再转发到4号电脑。 1号电脑把数据包发到网关A,必须知道网关A的MAC地址。所以,数据包的目标地址,实际上分成两种情况: 12345场景 ...
阅读全文 »

互联网协议入门(一)

发表于 2017-08-17 | 分类于 零碎笔记
前言我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为”互联网协议”(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网的原理。 一、概述1.1 五层模型互联网的实现,分成好几层。每一层都有自己的功能,就像建筑物一样,每一层都靠下一层支持。 用户接触到的,只是最上面的一层,根本没有感觉到下面的层。要理解互联网,必须从最下层开始,自下而上理解每一层的功能。 如何分层有不同的模型,有的模型分七层,有的分四层。我觉得,把互联网分成五层,比较容易解释。 如上图所示,最底下的一层叫做”实体层”(Physical Layer),最上 ...
阅读全文 »

imooc(二)

发表于 2017-08-16 | 分类于 前端杂烩
1.DOM事件类基本概念:DOM 事件的级别 → DOM事件模型(冒泡和捕获) → DOM 事件流 → 描述DOM事件捕获的具体流程 → Event对象的常见应用 → 自定义事件 1.1事件级别DOM01element.onclick=function(){} DOM2 12345element.addEventListener('click',function(){},false)默认:false(冒泡)true(捕获) DOM31element.addEventListener('keyup',function(){},false) 1.2事件模型DOM事件模型包括冒泡型事件和捕获型事件。 冒泡型事件:事件从特定的事件目标到最不特定的事件目标的顺序触发。 捕获型事件:与冒泡事件相反,事件从最不精确的对象开始触发,然后到最精确。 ...
阅读全文 »

imooc(一)

发表于 2017-08-15 | 分类于 前端杂烩
页面布局 题目:假设高度已知,请写出三栏布局,其中左栏、右栏宽度各为300px,中间自适应。 float实现基于纯float实现的三栏布局需要将中间的内容放在HTML结构的最后,否则右侧会沉在中间内容的下侧。 原理:元素浮动后,脱离文档流,后面的元素受浮动影响,设置受影响元素的margin值即可。 两边固定宽度,中间宽度自适应。 利用中间元素的margin值控制两边的间距。 宽度小于左右部分宽度之和时,右侧部分会被挤下去。 12345678910<div class="left">左侧宽度固定</div><div class="right">右侧宽度固定</div><div class="main">中间内容自适应</div><style type="text/css"> div {height ...
阅读全文 »

一些JavaScript面试题(一)

发表于 2017-08-09 | 分类于 前端杂烩
给数字加上千分位。字符串方法: 123456789function toThousands(num) { var num = (num || 0).toString(), result = ''; while (num.length > 3) { result = ',' + num.slice(-3) + result; num = num.slice(0, num.length - 3); } if (num) { result = num + result; } return result;} 正则表达式: 123function toThousands(num) { return (num || 0).toString().replace(/\ ...
阅读全文 »

Git远程操作常用命令

发表于 2017-08-04 | 分类于 Git学习
git clone远程操作的第一步,通常是从远程主机克隆一个版本库,这时就要用到git clone命令。 1$ git clone <版本库的网址> git remote为了便于管理,Git要求每个远程主机都必须指定一个主机名。git remote命令就用于管理主机名。不带选项的时候,git remote命令列出所有远程主机。 12$ git remoteorigin 使用-v选项,可以参看远程主机的网址。 git fetch一旦远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令。 1$ git fetch <远程主机名> 上面命令将某个远程主机的更新,全部取回本地。 git fetch命令通常用来查看其他人的进程,因为它取回的代码对你本地的开发代码没有影响。 默认情况下,git fetch取回所有分支 ...
阅读全文 »

Git学习(五)分支管理

发表于 2017-08-04 | 分类于 Git学习
创建与合并分支我们创建 dev 分支,然后切换到 dev 分支: 12$ git checkout -b devSwitched to a new branch 'dev' git checkout命令加上-b参数表示创建并切换,相当于以下两条命令: 123$ git branch dev$ git checkout devSwitched to branch 'dev' 然后,用git branch命令查看当前分支: 123$ git branch* dev master git branch命令会列出所有分支,当前分支前面会标一个*号。 然后,我们就可以在dev分支上正常提交,比如对readme.txt做个修改,加上一行内容: 15.创建了一个新分支 然后提交: 1234$ git add readme.txt$ git commit -m "creat a new branch"[ ...
阅读全文 »
1…456…8
思齐

思齐

思与之齐

76 日志
13 分类
40 标签
GitHub 微博 S F 知乎
© 2016 - 2019 思齐
0%