
Javascript
Jeffrey-Gao
这个作者很懒,什么都没留下…
展开
-
JavaScript 运行机制详解:再谈Event Loop
学习阮一峰的一篇博文: JavaScript 运行机制详解:再谈Event Loop 前端JS的牛人朴灵(田永强)所做的评注也挺有意思,可以看看。转载 2015-04-08 09:57:37 · 756 阅读 · 0 评论 -
论javascript中的数组与函数
javascript中的数组 js的数组并不是一个线性列表,而其实是个对象,下标中的数字不代表它在线性表中的索引位置,把它理解成java中的Map更合适 对于数组,提供了一些额外的方法,它们定义在Array.prototype中 因为数组其实是对象,你可以给一个数组加入新方法,比如total,用来计算总和的方法,但由于方法名是字符串,所以它并不改变数组的长度length javascript中的函数原创 2015-07-13 17:50:53 · 441 阅读 · 0 评论 -
javascript核心概念
javascript核心概念 规范 ECMAScript262是规范,当前版本是ECMA262-5,GoogleV8,Rhino,SpiderMonkey这些均是实现此规范的js引擎 this指针 原型prototype 执行上下文EC 变量对象VO 作用域链Scope Chain 函数与表达式 闭包原创 2015-06-04 17:20:05 · 564 阅读 · 0 评论 -
关于CommonJS的几点注解
CommonJS是一套规范,包括 binary encoding io fs system test socket event worker console AMD和CMD都是一种CommonJS具体实现,它们是为了适用于团队开发的模块化工程原创 2015-06-26 17:41:22 · 616 阅读 · 0 评论 -
javascript中的调试
方法一 使用现代浏览器的一些工具或者插件 方法二 可以在javascript语句中插入debugger;,这样就能在运行到此语句时挂起原创 2015-06-26 17:36:28 · 518 阅读 · 0 评论 -
javascript的函数上下文this四条规则
一个执行函数的this绑定到哪个上下文对象?有4条基本原则,以下按照顺序来判断: 该函数使用new运算符调用?(new绑定) 如果是,this绑定到新创建的那个对象上 该函数使用call 或者 apply调用?(显示绑定) 如果是,this绑定到apply或者call的第一个参数对象 该函数通过它的定义对象来调用? (隐式绑定) 如果是,this绑定到它的定义对象上 上述3条规则都不符合(缺省原创 2015-06-27 18:50:33 · 630 阅读 · 0 评论 -
JavaScript实现继承的五种方式
1. 原型链继承var Base = function() { this.level = 1; this.name = "base"; this.toString = function(){ return "base"; }; };var Sub = function() { }; Sub.prototype = new Base(); Sub.pro转载 2015-06-19 15:28:33 · 524 阅读 · 0 评论 -
crockford总结的精华版javascript
crockford总结的精华版javascript 函数是头等对象函数是有词法作用域的闭包基于原型继承的动态对象,对象没有静态类型,可以通过普通的属性赋值给任何一个对象,从而添加对象成员, 原型定义父对象允许一个对象可以从另一个对象中继承属性和方法对象字面量和数组字面量一种创建对象和数组的非常方便的表示法,javascript字面量是JSON的基础 JSON字面量与javascript对象的渊源很深原创 2015-06-19 12:08:20 · 647 阅读 · 0 评论 -
javascript的四种函数调用模式
这些模式影响到this的初始化参数每个函数除了接收正常的参数外,另有2个隐含参数:this, argumentsarguments,是函数接收的调用实参,与形参定义的参数个数无关arguments并不是一个数组,它除了一个length属性外,没有Array的其他任何方法 方法调用模式 当一个函数保存为一个对象的属性时,这个函数是此对象的方法。此时,在方法中使用this指向的是当前这原创 2015-06-18 15:34:12 · 848 阅读 · 0 评论 -
javascript中的继承特性
面向对象编程语言分类 基于类继承:比如java,C++基于原型继承:比如javascript 原型继承是动态完成的,添加到原型上的方法会即时生效,即便对象实例在新方法赋予到原型之前已经存在,也能获得新方法javascript没有块作用域,因此不同于C语言尽可能延迟声明变量,在javascript中,应该把所有的局部变量定义放在函数定义的最开始地方闭包是指外部通过调用一个函数来返原创 2015-06-18 17:08:17 · 1061 阅读 · 0 评论 -
读书笔记:编写可维护的javascript
#. 使用for-in循环的时候,要使用hasOwnProperty方法进行过滤,除非你想查找原型链上的继承属性 #. 不应当使用for-in循环进行数组遍历,而只应该对object的属性进行遍历 #. 每行表达式的结尾要使用分号(;),为了使压缩包能正常工作,还应该为每个js文件的开头加上分号,形如这样的匿名函数定义;(function(){...})(); #. 变量初始化应该赋值nul原创 2015-06-17 14:30:34 · 1285 阅读 · 0 评论 -
javascript的四种函数调用模式
这些模式影响到this的初始化参数 每个函数除了接收正常的参数外,另有2个隐含参数:this, arguments arguments,是函数接收的调用实参,与形参定义的参数个数无关 arguments并不是一个数组,它除了一个length属性外,没有Array的其他任何方法 方法调用模式 当一个函数保存为一个对象的属性时,这个函数是此对象的方法。此时,在方法中使用this指向的是当前这个对...原创 2019-03-23 17:30:21 · 248 阅读 · 0 评论