- 博客(23)
- 收藏
- 关注
原创 原型-原型链
1.在JS里,万物皆对象。方法(Function)是对象,方法的原型(Function.prototype)是对象。因此,它们都会具有对象共有的特点。即:对象具有属性__proto__,可称为隐式原型,一个对象的隐式原型指向构造该对象的构造函数的原型,这也保证了实例能够访问在构造函数原型中定义的属性和方法。2.方法(Function)方法这个特殊的对象,除了和其他对象一样有上述_proto_属性之...
2018-03-09 15:44:40
354
原创 三栏布局
圣杯布局:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2018-03-09 14:21:47
448
原创 数组去重
数组去重1 (利用对象)Array.prototype.unique1 = function(){var arr = [],obj = {},len = this.length;for(var i = 0; i if(!obj[this[i]]){ //trueobj[this[i]] = 1;arr.push(this[i]);}}return ar
2017-10-24 12:28:54
444
原创 Git基本操作
上传代码:git init 初始化仓库,在文件内部建立一个.git的文件(仓库的配置文件)现在就已经是一个仓库了git add -A (添加所有的东西),把文件添加到缓冲里面git commit -m"是对该文件的评论,比如修改了什么,也可以什么都不写" 把缓冲里面的文件添加到Head里面git remote add origin 添加一个远端的仓库叫origin
2017-09-07 00:10:59
412
原创 DOM基本操作
查看元素节点document代表整个文档document.getElementById()——元素id 在Ie8以下的浏览器,不区分id大小写,而且也返回匹配name属性的元素getElementsByTagName()——标签名getElementByName(); ——需注意,只有部分标签name可生效(表单,表单元素,img,iframe)getElementsByClass
2017-08-28 13:00:05
465
原创 浅层克隆-深层克隆
我们的数据类型分为原始值和引用值原始值存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置。由于这些原始类型占据的空间是固定的,所以可将他们存储在较小的内存区域 - 栈中。这样存储便于迅速查寻变量的值引用值存储在堆(heap)中的对象,也就是说,存储在变量处的值是一个指针(point),指向存储对象的内存处。由于引用值的大小会改变,所以不能把它放
2017-08-21 14:05:14
808
原创 JS运行三部曲---预编译
JS运行三个步骤:语法分析预编译解释执行语法分析:通俗来说就是通篇检查你的代码有没有语法错误,有语法错误的话,程序是不会执行的解释执行:也就是程序读一句执行一句最重点的也就是预编译了,那么预编译到底是什么?它发什么在什么时候?先来段代码压压惊function fn (a) { console.log(a) var a = 123; console.lo
2017-08-17 11:08:50
1179
原创 数字-字符串转换
1. 数字转换为字符串 a. 要把一个数字转换为字符串,只要给它添加一个空的字符串即可: var n = 100; var string = n + ""; b. 要让数字更加显式地转换为字符串,可以使用String()函数: var n = 100; var string = String(n); c. 使用toString()方法: var n =
2017-08-15 20:33:55
4788
1
原创 a标签中有点击事件
我们常用的在a标签中有点击事件:1. a href="javascript:js_method();"这种方法在传递this等参数的时候很容易出问题,而且javascript:协议作为a的href属性的时候不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。W3C标准不推荐在href里面执行javascript语句2
2017-08-13 14:51:47
14482
原创 React-入门
一.什么是ReactReact 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站。做出来以后,发现这套东西很好用,就在2013年5月开源了。1.React不是一个完整的MVC框架,用于构建组件化UI的库,是一个前端界面开发工具,可以作为MVC中的View层,Reac
2017-08-13 12:17:14
586
原创 Meta标签总结
页面关键词 页面描述 搜索引擎索引方式 all:文件将被检索,且页面上的链接可以被查询; none:文件将不被检索,且页面上的链接不可以被查询; index:文件将被检索; follow:页面上的链接可以被查询; noindex:文件将不被检索; nofollow:页面上的链接不可以被查询。 -->
2017-07-31 18:23:26
518
原创 跨域6种方法-JSONP
跨域6种方法:JSONPdocument.domainwindow.namelocaltion.hashH5 postmessage服务器代理中转JSONP原理:利用标签没有跨域限制的漏洞来达到与第三方的通讯的目的当需要通讯的时候,可以创建一个标签,它的src指向第三方的API地址并提供一个回调函数来接受数据(函数名可以约定,或者通过地址参数传递)。
2017-07-28 14:17:15
749
原创 HTTP协议
HTTP 协议是TCP/IP协议族中的子集分层网络协议结构 应用层;向用户提供应用服务时通信的活动(HTTP协议) 传输层:对应上层应用层,提供处于网络连接中两台计算机之间数据传输(TCP) 网络层:用来处理网络上流动的数据包(数据包是最小的网络传输包)(IP) 数据链路层:用来处理连接网络的硬件部分 (网络) 通信
2017-07-28 14:12:03
354
原创 ajax
ajax是一种不需要重新加载页面,就能更新部分网页的技术,它主要是通过异步通信实现服务器和后台的数据交换 Ajax的工作原理?在用户和服务器之间加了—个中间层(AJAX引擎),用户的请求不需要全都交给服务器,一些数据处理先由ajax引擎处理,然后代为向服务器提交请求 ajax运行的流程?1.生成一个ajax对象2.通过ajax对象 open(method, url, f
2017-07-28 14:03:40
328
转载 内容代码优化
• 尽量减少HTTP请求• 减少DNS查找• 避免跳转• 缓存Ajax• 推迟加载• 提前加载• 减少DOM元素数量• 用域名划分页面内容• 使frame数量减少• 避免404错误1、尽量减少HTTP请求 终端用户响应的时间中,有80%用于下载各项内容,这部分时间包括下载页面中的图像、样式表、脚本、Flash等。通过减少页面中的元素可以减少HTT
2017-07-28 14:01:13
357
转载 服务器代码优化
1、使用内容分发网络 内容分发网络(Content Delivery Network, CDN)是由一系列分散到各个不同地理位置上的Web服务器组成的,它提高了网站内容的传输速度,用于向用户传输内容的服务器主要是根据和用户在网络上的靠近程度来指定的。例如,拥有最少网络跳数(nctwork hops)和响应速度最快的服务器会被选定。用户与网站服务器的接近程度会影响响应时间的长短,把网站内
2017-07-28 13:59:42
520
转载 Js代码优化
• 把脚本置子页面底部• 使用外部JavaScript和CSS• 消减JavaScript和CSS• 减少DOM访问• 开发智能事件处理程序1、把脚本置于页面底部脚本带来的问题就是它阻止了页面的平行下载, HTTP/1.1规范建议,浏览器每个主机名的并行下载内容不超过两个,如果你的图片放在多个主机名上,你可以在每个并行下载中同时下载2个以上的文件。但是当
2017-07-28 13:57:46
417
转载 Css优化
• 把样式表置于顶部• 避免使用CSS表达式• 用代替@import• 避免使用滤镜1、把样式表置于顶部 我们发现把样式表放到文档的内部似乎会加快员面的下裁速度,这是因为把样式表放到内会使页面有步骤的加载显示。注重性能的前端服务器往往希望页面有秩序地加载, 同时, 我们也希望浏览器把已经接收到内容尽可能显示出来, 这对子拥有较多内容的页面和网速较慢的用户来说特别重要。当
2017-07-28 13:53:58
584
原创 JS事件初试-贪吃蛇小游戏
1. 获取一个图片当背景2. 利用数组的push和for循环创建一个蛇身体3. 然后设置蛇开始移动,开始方向是向右,我设置了一些开始 暂停 难度选择按钮来决定是否移动(就是用点击事件打开定时器,然后执行运动函数)4. 蛇开始移动之后,要先获取蛇头,控制蛇头的运动方向,让蛇尾跟随蛇头(这里用了一个for循环实现)5. 控制蛇头运动用的键盘事件,运动过程中会撞墙
2017-07-28 11:37:24
516
原创 数组操作
1 shift: 删除原数组的第一项,并返回删除元素的值; 如果数组为空则返回undefined var a = [1,2,4,7,5]; var b = a.shift(); //a: [2,4,7,5] b: 1; 2 unshift: 将参数添加到原数组开头,并返回数组的长度 var a = [1,2,3,4,5]; var b = a.uns
2017-07-28 11:30:07
333
原创 原型-原型链-继承
1. 传统形式原理:Son继承Foo,继承Foo.prototype.缺点:不能随便给自己原型增添属性过多的继承了没用的属性2. 借用构造函数原理:Foo构造出自己的函数,内有许多属性和方法。Son通过改变this的指向,从而借用Foo函数内的属性、方法缺点:没有实现真正的继承,不能继承构造函数的原型每次构造函数都要多走一个函数3. 共享原型原理
2017-07-28 11:28:26
395
原创 Css3基础
css3:属性选择器(^ $ *)伪类选择器(root、not、empty、target)伪元素选择器(selection)伪元素 after before first-letterfirst-line层次选择器(> + ~)盒模型 box-sizing伸缩盒子display:flex多列布局:column-(count width gap rulespan)变
2017-07-28 11:27:06
406
原创 创建对象的七种方式
工厂模式 function createPerson(name, job) { var o = new Object() o.name = name o.job = job o.sayName = function() { console.log(this.name) } return o}var person1 = createPer
2017-07-28 11:20:45
488
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅