本文转自:http://remember2015.info/blog/?p=141#scope-chain 零.索引 对象(An Object) 原型链(A Prototype Chain) 构造函数(Constructor) 执行上下文栈(Execution Context Stack) 执行上下文(Execution Context) 变量对象(Variable Object) 激活对象(Activation Object) 作用域链(Scope Chain) 闭包(Closures) th…
知识要点 本章讨论javascript的子集和超集,其中子集的定义大部分处于安全考虑.只有使用这门语言的一个安全的子集编写脚本,才能让代码执行的更安全.更稳定.比如如何更安全地执行一段由不可信第三方提供的广告代码. 我们在本章对它们作必要的讲述是基于几点考虑: 它们的确很强大 它们有可能在未来成为标准 它们可用来写Firefox扩展插件 它们可用在服务器端的JavaScript编程 在简单介绍JavaScript语言的子集之后,本章后面会开始介绍语言的扩展部分.由于这些扩展毕竟不是标准,因此这里…
译者注:原文作者研究了近2.4万篇 JavaScript 文章得出这篇总结,全文包含学习指南.新人上手.Webpack.性能.基础概念.函数式编程.面试.教程案例.Async Await.并发.V8.机器学习.数据可视化.调试.单元测试等章节,非常适合用于对自己 JavaScript 技术栈的比对,用于查漏补缺,适合收藏阅读.有删减.文中如有错误,欢迎评论指出. 在过去的一年间(2017年),我们对比了近24000篇 JavaScript 文章,并从中挑选出了最好的55篇.我们做了这个目录,认为…
简介自1996年以来,JavaScript的:权威指南已为JavaScript圣经程序员,程序员指南和全面的参考,以核心语言和客户端JavaScript API的Web浏览器定义.第6版包括HTML5和ECMAScript 5,与jQuery和服务器端JavaScript新的篇章.这是推荐谁想要学习的Web编程语言经验的程序员,以及当前的JavaScript程序员谁想要掌握它. 封面   目录<javascript权威指南(第6版)> 前言 1 第1章 javascript概述 5 1.1 j…
学习一门知识应该了解其背景,很多人认为会用就行,起初我也是这么认为的,但后来才知道对起源的了解也很必要,从事javascript开发5年,今天开始总结一些笔记,分享下. 一.什么是JavaScript JavaScript是一种具有面向对象能力的.解释型的程序设计语言.更具体一点,它是基于对象和事件驱动并具有相对安全性的客户端脚本语言.因为他不需要在一个语言环境下运行,而只需要支持它的浏览器即可.它的主要目的是,验证发往服务器端的数据.增加Web互动.加强用户体验度等.   二.JavaScri…
前言 这本由David Flanagan著作,并由淘宝前端团队译的<JavaScript权威指南>,也就是我们俗称的“犀牛书”,算是JS界公认的“圣经”了.本书较厚(有1004页),读起来颇费功夫,但作为JavaScript(下文简称:JS)相关从业者,我还是鼎力推荐,一定要读完这本经久不息,好评如潮的JS“圣经”(如果您有耐心的读完,觉得还不错的,博客最后附有购买本书的优惠券,可自行领取). 说完本书重要性,下面重点介绍一下本书作者写书的逻辑性,简单来说本书分为四部分,第一部分:JS核心:第…
1.javascript的数据类型分为两类:原始类型和对象类型. 原始类型包括字符串.数字.布尔值.null.undefined. 对象是属性的集合,每个对象都由“名/值”对构成.数组和函数是特殊的对象. javascript核心定义了三种有用的类:日期类.正则类.错误类. 2.整型直接量: 16进制直接量以“0x”或“0X”开头,如0xff. 8进制直接量以“0”开头,如0377.(注:某些javascript的实现不支持八进制,所以最好不使用) 3.javascript中的算术运算: Mat…
原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructuring 箭头函数 Arrow Functions Symbols 集合 学习Babel和Broccoli,马上就用ES6 代理 Proxies ES6 说自己的宗旨是"凡是新加入的特性,势必已在其它语言中得到强有力的实用性证明."--TRUE!如果你大概浏览下 ES6 的新特性,事实上它…
原文地址 迁移到:http://www.bdata-cap.com/newsinfo/1741515.html 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructuring 箭头函数 Arrow Functions Symbols 集合 学习Babel和Broccoli,马上就用ES6 代理 Proxies ES6 说自己的宗旨是“凡是新加入的特性,势必已在其…
JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自有的属性外,还可以从一个称为原型的对象继承属性.对象的方法通常是继承的属性.这种"原型式集成"是JavaScript的的核心特征. 1.创建对象 第一种:对象直接量表示法创建对象. 这是最简单的对象创建方式,对象直接量由若干key:value键值对属性组成,属性之间用逗号分隔,整个对象用花…
<javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本书来补充下. 今天是今年的196天,由于我之前承诺过,每天分享读书笔记,只是之前分享的是大众读物,所以随手分享到kindle阅读群里了.但是现在读的是技术类书籍,分享到kindle读书群不太合适,所以还是以博客的形式分享.这样子,一个链接,大家感兴趣了就点开看看,不感兴趣了,就不点开. 其实这篇文章应该是昨天…
感谢好友破狼提供的这篇好文章,也感谢写这些知识点的作者们和将他们整理到一起的作者.这是github上的一篇文章,在这里本兽也就只做翻译,由于本兽英语水平和编程能力都不咋地,如有不好的地方也请多理解体谅.戳这里:原文 能够为大家提供这些简短而实用的JavaScript技巧来提高大家编程能力,这对于我来说是件很开心的事.每天仅花上不到2分钟的时间中,你将可以读遍JavaScript这门可怕的语言所呈现给我们的特性:performance(性能), conventions(协议), hacks(代码h…
对象 //本书是指:javascript权威指南    //以下内容摘记时间为:2013.7.28 对象的定义: 1.对象是一种复合值:将很多值(原始值或者对象)聚合在一起,可以通过名字访问这些值. 2.对象也可以看做是属性的无序集合,每个属性都是一个名值对. 3.属性名是字符串,因此我们可以把对象看成是从字符串到值的映射. 4.这种基本数据结构还可以叫做:散列(hash),散列表(hashtable),字典(dictionary),关联数组(associative array).   属性除了…
javascript中的原始类型和对象类型(基本类型和引用类型) //本书是指:javascript权威指南    //以下内容摘记时间为:2013.7.27   计算机程序运行时需要对值(value)(比如:3.14或者“hello”)进行操作. 能够表示并操作的值的类型称作数据类型(type). 当程序需要将值保存起来以备将来使用,便将其赋值给一个变量(variable).   Js的数据类型分为两类:   原始类型 和对象类型(基本类型和引用类型,来自高程的说法)   原始类型包括:字符串…
Google JavaScript样式指南   目录 1简介 1.1术语说明 1.2指南说明 2源文件基础知识 2.1文件名 2.2文件编码:UTF-8 2.3特殊字符 3源文件结构 3.1许可或版权信息(如果有) 3.2 @fileoverview JSDoc,如果存在的话 3.3 goog.module语句 3.4 goog.require语句 3.5文件的实现 4格式化 4.1大括号 4.2块缩进:+2个空格 4.3声明 4.4柱限:80 4.5换行 4.6空白 4.7分组括号:推荐 4.…
JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删.JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等.JavaScript对象除了可以保持自有的属性外,还可以从一个称为原型的对象继承属性.对象的方法通常是继承的属性.这种“原型式集成”是JavaScript的的核心特征. 1.创建对象 第一种:对象直接量表示法创建对象.这是最简单的对象创建方式,对象直接量由若干key:value键值对属性组成,属性之间用逗号分隔,整个对象用花括号括起来. v…
作为前端工程师必备技能,JavaScript 的重要性不言而喻.虽然易上手,但却有着诸多复杂微妙的机制,想要真正掌握绝非易事. 专栏面向JavaScript语言的实际应用者与深度爱好者,以讲述JavaScript语言特性.原理以及核心实现技术为主. 周爱民将综合代码的特殊性.代码所涉问题的领域.与该代码相似的或同类的问题,将代码逐步分解.解析,一方面发掘它们潜在的应用,另一方面帮助你构建一个语言知识结构. 周爱民,前端"绿皮书"<JavaScript语言精髓与编程实践>作者…
函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对于其他面向对象语言,在JavaScript中的函数是特殊的,函数即是对象.JavaScript可以把函数赋值给变量,或者作为参数传递给其他函数,甚至可以给它们设置属性等. JavaScript的函数可以嵌套在其他函数中定义,这样定义的函数就可以访问它们外层函数中的任何变量.这也就是所谓的"闭包&qu…
JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. JavaScript数组元素索引可以是不连续的,它们之间可以有空缺. 1.创建数组 调用构造函数Array()创建数组: var a = new Array(); //空数组,等同于数组直接量[] var b = new Array(5); //创建指定长度的数组 var c = new Array(…
<javascript权威指南>读书笔记——第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字符集 JavaScript程序是用Unicode字符集编写. Unicode是ASCII和Latin-1的超集,支持几乎所有语言. ES3 要求支持Unicode 2.1及后续版本 ES5 要求支持Unicode 3及后续版本 2.1.1 区分大小写 JavaScript是区分大小写的. HTML 并不区分大…
JavaScript 中的数据类型分为两类:原始类型(primitive type)和对象类型(object type).原始类型包括数字.字符串和布尔值 JavaScript 中有两个特殊的原始值:null(空)和 undefined(未定义),它们不是数字.字符串或布尔值.它们通常代表了各自特殊类型的唯一的成员 除此之外的就是对象了.对象是属性(property)的集合,每个属性都由「名/值对」(值可以是原始值或者对象)构成.JavaScript 对象很多时候也是 JSON/map/hash…
原文转自:http://blog.jobbole.com/79484/ Airbnb 是一家位于美国旧金山的公司,本文是其内部的 JavaScript 风格指南/编码规范,在 Github 上有 11,000+ Star,2100+ fork,前端开发者可参考. 基本类型:当你访问基本类型时,你是直接对它的值进行操作. string number boolean null undefined 1 2 3 4 5 6 var foo = 1, bar = foo;   bar = 9;   con…
一.数字写法 3.14 2345.789 .333333333333333333 6.02e23 // 6.02 × 10 23 1.4738223E-32 // 1.4738223 × 10 −32 二.Math对象的用法 Math.pow(2,53) // => 9007199254740992: 2 to the power 53 Math.round(.6) // => 1.0: round to the nearest integer Math.ceil(.6) // => 1…
<JavaScript权威指南 第六版 中文版> 第二章 词法结构 2.1字符集 JavaScript是使用Unicode字符集编码写的. 2.1.1区分大小写 JavaScript是区分大小写的语言.也就是说,关键字.变量.函数名和所有的标识符都需要采用一致的大小写形式. 许多客户端JavaScript对象和属性与它们所表示的HTML标签和属性同名.在HTML中这些标签和属性名可以使用大写,而在JavaScript中则必须使用小写 2.1.2空格.换行符和格式控制符 JavaScript会忽…
后续如有内容,本篇将会照常更新并排满15个知识点,以下是其他几篇译文的地址: 第一篇地址:( 译.持续更新 ) JavaScript 上分小技巧(一) 第二篇地址:( 译.持续更新 ) JavaScript 上分小技巧(二) 第三篇地址:( 译.持续更新 ) JavaScript 上分小技巧(三) #59 - ES6,var vs let var关键字定义的变量根据定义的环境用于function内,function外或者全局:而let定义的变量只用于"块"范围. function va…
最近家里杂事较多,自学时间实在少的可怜,所以都在空闲时间看看老外写的内容,学习之外顺便翻译分享~等学习的时间充足些再写写自己的一些学习内容和知识点分析(最近有在接触的:复习(C#,SQL).(学习)TypeScript,(基础操作)MongoDB.TypeScript之后入手AngularJs 2.0) 后续如有内容,本篇将会照常更新并排满15个知识点,以下是其他几篇译文的地址: 第一篇地址:( 译.持续更新 ) JavaScript 上分小技巧(一) 第二篇地址:( 译.持续更新 ) Java…
考虑到文章过长,不便于阅读,这里分出第二篇,如有后续,每15个知识点分为一篇... 第一篇地址:( 译.持续更新 ) JavaScript 上分小技巧(一) 第三篇地址:( 译.持续更新 ) JavaScript 上分小技巧(三) 第四篇地址:( 译.持续更新 ) JavaScript 上分小技巧(四) #30 - 将true的/false的值转换成boolean类型你可以通过!!操作将为true/为false的值转换为boolean类型. !!"" // false !!0 // f…
这个标准基于 JavaScript (Netscape) 和 JScript (Microsoft).Netscape (Navigator 2.0) 的 Brendan Eich 发明了这门语言,从 1996 年开始,已经出现在所有的 Netscape 和 Microsoft 浏览器中.ECMA-262 的开发始于 1996 年,在 1997 年 7 月,ECMA 会员大会采纳了它的首个版本. 本系列教程旨在向大家分享本人当年学习Javascript的笔记和心得.本系列教程预计分五个部分. 第…
/* 一.执行上下文:堆栈(底部全局上下文+顶部当前活动上下文) */ /* 二.变量对象: 变量根据执行上下文,找到数据存储位置,这种机制叫变量对象 1. 变量都要var定义,且都不能delete 2. __parent__属性,父级 */ /* 三.This:执行上下文的一个属性,不能改变?? 1. 全局this = global 2. 函数this = 调用者this 3. 手动设置函数调用的this值.apply和call:将第一个参数作为this值 apply:第二个参数必须是数据 c…
本人目前正在学习js,使用的是javascript权威指南(中文版),学习的时候发现一些细节上的错误,若是我的错误,欢迎指正 1.P11------多了“我们称为 原文为 return Math.sqrt(a * a + 我们称为b * b); 2.P16------canvas错写为vanvas 原文为 第21章涵盖基于HTML的<vanvas>标签的客户端API,用来进行任意形状图形的绘制. 3.P38------“5代表星期五”错写为“5代表星期一” 原文为 later.getDay()…