自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 深入理解JavaScript执行上下文、函数堆栈、提升的概念

首先明确几个概念: - EC:函数执行环境(或执行上下文),Execution Context - ECS:执行环境栈,Execution Context Stack - VO:变量对象,Variable Object - AO:活动对象,Active Object - scope chain:作用域链想当初自己看到这几个概念的时候是一(m)脸(d)懵(z)逼(z),但是不得不说这几个概念

2017-04-12 17:19:04 672

转载 深入浅出 妙用Javascript中apply、call、bind

原博客地址 “对我来说,博客首先是一种知识管理工具,其次才是传播工具。我的技术文章,主要用来整理我还不懂的知识。我只写那些我还没有完全掌握的东西,那些我精通的东西,往往没有动力写。炫耀从来不是我的动机,好奇才是。” apply、call在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this

2017-04-10 15:46:24 351

原创 浅析Javascript 中的 this 的七种使用场景

Javascript 中的 this,有时候让人迷惑,所以总结了一下关于this指向的问题。在函数中 this 到底取何值,是在函数真正被调用执行的时候确定下来的,函数定义的时候确定不了。 因为 this 的取值是函数执行上下文(context)的一部分,每次调用函数,都会产生一个新的执行上下文环境。当代码中使用了 this,这个 this 的值就直接从执行的上下文中获取了,而不会从作用域链中

2017-03-20 23:55:27 3176 1

原创 函数防抖与函数节流

概念函数防抖(debounce) 当调用动作过n毫秒后,才会执行该动作,若在这n毫秒内又调用此动作则将重新计算执行时间 函数节流(throttle) 预先设定一个执行周期,当调用动作的时刻大于等于执行周期则执行该动作,然后进入下一个新周期 函数节流(throttle)与 函数防抖(debounce)都是为了限制函数的执行频次,以优化函数触发频率过高导致的响应速度跟不上触发频率,出现延迟,假死

2017-03-20 23:45:15 3358

原创 NodeJS的模块机制

node模块化@(node)一、前言Node应用是由模块组成的,Node遵循了CommonJS的模块规范,来隔离每个模块的作用域,使每个模块在它自身的命名空间中执行。CommonJS规范的主要内容: 模块必须通过 module.exports 导出对外的变量或接口,通过 require() 来导入其他模块的输出到当前模块作用域中。 CommonJS模块的特点: (1)所有代码运行在当前模块作

2017-02-06 19:51:58 6002 2

转载 Flex布局(1)

文章转载自阮一峰的《Flex布局教程:语法篇》 链接地址一、什么是Flex布局 任何块级元素以及行级元素都可以定义为flex布局div{ display: flex; } span{ display: inline-flex; }Webkit内核的浏览器,必须加上-webkit前缀.box{ display: -webkit-flex; /* Safari */ displ

2017-02-04 09:55:44 290

原创 正则--match和exec方法

一、字符串方法–match的用法1、stringObject.match(str):用于检索字符串中指定的值,返回一个存放匹配结果的数组,若没有检索到,返回null var str = "hello world!"; str.match('llo');//['llo'] str.match("ksk");//"null" 2、stringObject.match(regexp)

2017-02-04 09:51:03 469

原创 JavaScript 面向对象(一)

1、无论什么时候,只要创建了一个函数,就会默认给这个函数创建一个prototype属性,这个属性指向这个函数的原型对象。所有原型对象都会自动获得一个constructor属性,这个属性包含一个指向prototype属性所在的函数的指针。function Person(){ name: 'Bob', sayName: function(){ console.log(th

2017-02-04 09:48:55 243

原创 JS数组的方法

keys() —ES6规范 数组的 keys() 方法返回一个数组索引的迭代器。 //索引迭代器会包含那些没有对应元素的索引 var arr = ["a", , "c"]; var sparseKeys = Object.keys(arr);//ES6语法 var denseKeys = [...arr.keys()]; console.log(sparseKeys); // [0, 2] co

2016-12-15 23:02:05 613

原创 Vue--过滤器

vue – 过滤器一、Vue提供的过滤器vue本身提供了很多便利的过滤器,这里列举一下,具体的可以参考官方文档过滤器。例子中使用到的data和methodsdata:{ message: 'hello world', money: 12345, num: [1,2,3,4,5], obj: { name: 'Li

2016-11-28 16:59:35 2849

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除