js
文章平均质量分 64
WittyLu
这个作者很懒,什么都没留下…
展开
-
“返回顶部”按钮的实现
在很多地方,我们都会用到“返回顶部”按钮。那么这个要怎么实现呢?1、html代码返回顶部2、css代码.back_to_top{ position: fixed; bottom:30px; right: 30px; border:1px solid #888;}3、js代码 var backButton=$('.back_to_top')原创 2017-03-08 15:31:11 · 23253 阅读 · 0 评论 -
JavaScript作用域链和原型链
当执行一段JavaScript代码(全局代码或函数)时,JavaScript引擎会创建为其创建一个作用域又称为执行上下文(Execution Context),在页面加载后会首先创建一个全局的作用域,然后每执行一个函数,会建立一个对应的作用域,从而形成了一条作用域链。每个作用域都有一条对应的作用域链,链头是全局作用域,链尾是当前函数作用域。原创 2017-08-06 21:04:51 · 620 阅读 · 0 评论 -
JavaScript作用域
作用域是一个很抽象的概念,类似于一个“地盘”,其中没有变量。要通过作用域对应的执行上下文环境来获取变量的值。同一个作用域下,不同的调用会产生不同的执行上下文环境,继而产生不同的变量的值。所以,作用域中变量的值是在执行过程中产生的确定的,而作用域却是在函数创建时就确定了。原创 2017-08-06 12:24:23 · 356 阅读 · 0 评论 -
页面从输入 URL 到页面加载显示完成过程
当发送一个URL请求时,不管这个URL是Web页面的URL还是Web页面上每个资源的URL,浏览器都会开启一个线程来处理这个请求,同时在远程DNS服务器上启动一个DNS查询。这能使浏览器获得请求对应的IP地址。浏览器与远程Web服务器通过TCP三次握手来建立一个TCP/IP连接。该握手包括一个同步报文,一个同步原创 2017-08-06 21:33:59 · 367 阅读 · 0 评论 -
GET和POST的区别,何时使用POST?
GET:一般用于信息获取,使用URL传递参数,对所发送信息的数量也有限制,一般在2000个字符POST:一般用于修改服务器上的资源,对所发送的信息没有限制。GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值,也就是说Get是通过地址栏来传值,而Post是通过提交表单来传值。然而,在以下情况中,请使用 POST 请求:1.无原创 2017-08-06 21:38:13 · 1000 阅读 · 0 评论 -
浏览器本地存储
在较高版本的浏览器中,js提供了sessionStorage和globalStorage。在HTML5中提供了localStorage来取代globalStorage。html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage。sessionStorage用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并且当原创 2017-08-06 21:52:20 · 347 阅读 · 0 评论 -
理解javascript闭包
简单地说,函数执行时创建了一个内部函数,这个内部函数作为返回值,或以某种方式保留下来(属性),之后才会调用,这就会形成了闭包。通俗来讲,JS所有的function都是一个闭包。原创 2017-07-13 14:30:36 · 334 阅读 · 0 评论 -
浅拷贝和深拷贝
浅拷贝和深拷贝针对的是Object和Array这样的复杂类型。下面介绍两者的区别:浅拷贝:只复制一层对象的属性,是对对象地址的复制,并没有开辟新的栈,也就是复制的结果是两个对象指向同一个地址,修改其中一个对象的属性,则另一个对象的属性也会改变。深拷贝:递归复制了所有层级。所有元素或属性均完全复制,与原对象完全脱离,也就是说所有对于新对象的修改都不会反映到原对象中。原创 2017-08-15 20:00:39 · 337 阅读 · 0 评论 -
正则表达式验证密码
要求:密码必须符合由数字,大写字母,小写字母,至少其中两种组成,且长度不小于8,同时第一位不能为数字。如果密码符合 ,返回”YES”,否则,返回”NO”。 var reg=/^(?![A-Z]+$)(?![a-z]+$)(?!\d+$)\S{8,}$/;原创 2017-09-14 22:26:14 · 15507 阅读 · 0 评论 -
Promise
今天进行了一个面试。发现自己对 promise还是理解的不够深入。现在就抽空做个总结,加深自己的理解,哈哈。Promise 引入在JavaScript的世界中,所有代码都是单线程执行的。由于这个“缺陷”,导致JavaScript的所有网络操作,浏览器事件,都必须是异步执行。异步执行可以用回调函数实现:function callback() { console.log('Done');}原创 2017-09-26 13:16:38 · 736 阅读 · 0 评论 -
js数组方法考察点详解
来自“阿里巴巴2017秋招前端笔试题”中的一道笔试题:将数组 var a=[1,2,3] 变成数组 [4,3,2,1] 下面的方式正确的是? a.reverse().unshift(4) a.push(4).reverse() a.push(4); a.reverse() a.splice(3,1,4).reverse()原创 2017-09-19 20:08:04 · 602 阅读 · 0 评论 -
jQuery插件开发
本质区别,那就是`$.extend`方法是在jQuery全局对象上扩展方法,`$.fn.extend`方法是在`$`选择符选择的jQuery对象上扩展方法。所以扩展jQuery的公共方法一般用`$.extend`方法,定义插件一般用`$.fn.extend`方法原创 2017-09-19 21:35:24 · 707 阅读 · 0 评论 -
深度克隆对象
克隆的概念浅度克隆:原始类型为值传递,对象类型仍为引用传递。深度克隆:所有元素或属性均完全复制,与原对象完全脱离,也就是说所有对于新对象的修改都不会反映到原对象中。原创 2017-08-06 20:49:58 · 299 阅读 · 0 评论 -
js严格模式
1.为什么用严格模式消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;消除代码运行的一些不安全之处,保证代码运行的安全;提高编译器效率,增加运行速度;为未来新版本的Javascript做好铺垫。原创 2017-08-06 20:11:17 · 459 阅读 · 0 评论 -
call和apply的用法
call和apply都是非常常用的方法,本文介绍了他们的相同点、区别以及用法。原创 2017-03-13 14:43:12 · 669 阅读 · 0 评论 -
侧边栏的实现(二)
本文将接着上部分来实现侧边栏的动态效果,开始侧边栏是不显示的,点击侧边栏菜单显示侧边栏,并呈现遮罩效果。点击遮罩,隐藏侧边栏。原创 2017-03-14 10:09:57 · 1485 阅读 · 0 评论 -
侧边栏的实现(三)
侧边栏的滑动效果另外一种实现方式。原创 2017-03-14 15:04:53 · 1082 阅读 · 0 评论 -
Git的安装与配置
本文简单介绍了Git的安装和配置,并总结了同github中建立的仓库关联起来的方法。原创 2016-03-25 18:58:35 · 1152 阅读 · 0 评论 -
通过for循环每隔两秒按顺序打印出arr中的数字
通过for循环每隔两秒按顺序打印出arr中的数字,本文通过4种方法实现了上述功能。原创 2017-03-31 12:21:57 · 3020 阅读 · 0 评论 -
JavaScript中函数参数的传递
所有函数的参数都是按值传递的,也就是说把函数外部的值复制给函数内部的参数,就和把值从一个变量复制到另一个变量一样。原创 2017-07-14 10:27:04 · 706 阅读 · 0 评论 -
前端经典面试题1
前端经典面试题 1.什么是盒子模型?2.简述一下src与href的区别?3.简述同步和异步的区别?4.怎样添加、移除、移动、复制、创建和查找节点?原创 2017-07-12 19:21:39 · 264 阅读 · 0 评论 -
this的指向问题
JavaScript的this总是指向一个对象,而具体指向哪个对象是在运行时基于函数的执行环境动态绑定的,而非函数声明时的环境。1、作为对象的方法调用var obj = { a: 1, getA: function(){ console.log(this === obj); //true console.log(this.a); //1 }}原创 2017-07-20 12:43:18 · 238 阅读 · 0 评论 -
鼠标点击 INPUT 元素后默认触发的事件执行顺序
所有浏览器中,当用户通过鼠标操作触发 click 事件时,事件触发顺序: 1、MouseDown 事件 2、Focus 事件 3、MouseUp 事件 4、Click 事件原创 2017-08-02 14:14:58 · 6039 阅读 · 1 评论 -
重绘和重排
DOM树:表示页面结构。 渲染树:表示DOM节点如何显示。简要介绍了重绘和重排的定义,触发条件。原创 2017-07-28 09:37:45 · 4276 阅读 · 1 评论 -
正则表达式
| 将两个匹配条件进行逻辑“或”(Or)运算。 ^ 匹配输入字符串的开始位置。 [a-z] 字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。 [^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。例如,“[原创 2017-07-28 15:27:12 · 503 阅读 · 0 评论 -
js中json对象key值首字母大写化
function toUpperCase(jsonObj) { if(typeof(jsonObj)=='object'){ for (var key in jsonObj){ jsonObj[key.substring(0,1).toUpperCase()+key.substring(1)] = jsonObj[key]; delete原创 2017-09-21 22:16:53 · 3997 阅读 · 2 评论