工作三年每天都觉得很忙碌,很少有时间停下思考,或者补充自己,一个很偶然的机会让我遇到了这本书,它很薄,随手翻阅多次就可以看完,但它的内容却很丰富,丰富到每一个章节都值得你仔细思考,甚至阅读多遍。它很有趣,有趣到每次阅读都有不同的收获~ 接下来我将按章节,来总结一下我的收获,与大家共勉,如有哪些地方理解不到位,辛苦指正。


目录

前言

第一章:精华

1、 JavaScript 它既包含一些优秀的编程思想,又存在少数非常糟糕的使用方式。

2、如何能快速区分出 JavaScript 有哪些精华和糟粕的部分的部分呢?

前言

我觉得这本书的他的核心目标,是帮助我们来学习JavaScript的编程思想。

当我们在写程序的时候,可能会喜欢尝试使用各种特性,可有些特性使用起来,它所带来的麻烦远超过他的价值,例如:有些特性不好移植,有些还会导致代码难以阅读或者修改,有些则使用起来易于出错,还有一些,本身就存在这设计错误。

第一章:精华

1、 JavaScript 它既包含一些优秀的编程思想,又存在少数非常糟糕的使用方式。

其中词法的作用作用域主要:

词法作用域:也可以称为静态作用域,函数的作用域,在函数定义的时候就决定了

动态作用域:函数的作用域实在函数调用的时候决定的

2、如何能快速区分出 JavaScript 有哪些精华和糟粕的部分的部分呢?

最初可以通过一个叫JSLint的解析器来区分,他可以分析出代码的问题并报告出它的缺点,那目前主流的JS Lint工具有哪些呢?

JSLint

JSLint是由Douglas Crockford开发的,可能是最早的JavaScript Lint工具了吧,它的名字来源于著名的C语言工具Lint。

JSHint

JSHint是由Anton Kovalyov基于JSLint的代码实现的开源项目,由于JSLint时期大多数人都在受JSLint压迫,JSHint相比较之下,更友好,也更容易配置,所以很快就发展了起来,也得到了众多IDE和编辑器的支持。但是,由于它是基于JSLint开发的,自然原有的一些问题它也继承下来了,比如不易扩展,不容易直接根据报错定位到具体的规则配置等,虽然之前好像是有过相关的讨论,但是现在仍然没有什么好的解决办法。好在它发展的不错,很多时候遇到的问题都可以在网上找到相关的解决方案,而且文档也是非常不错的。

ESLint

ESLint是由Nicholas C. Zakas在2013年开始开发的,它的初衷就是为了能让开发者能自定义自己的linting rules,而且它提供了一套相当完善的插件机制,可以自由的扩展,动态加载配置规则,同时可以方便的根据报错定位到具体的规则配置。而且我比较喜欢它的一点是文档非常详细,可能这也是灵活所必须的吧。在这里还要提一点,ESLint最初并不是为了造一个重复的轮子,而是作者在实际使用中的需求没有能得到JSHint团队的回应,所以他就结合当时的JSHint和另一个代码风格的检查工具JSCS写出来了现在具备代码风格检查,自定义插件扩展功能的ESLint了。

基于上面的介绍,我们可能对书中要阐述的内容,都有了大改的了解,关于Lint工具后面会详细和大家一起学习下Eslint,并给出详细实战,让我们一起期待吧。

JavaScript 语言精粹相关推荐

  1. 读阮一峰对《javascript语言精粹》的笔记,我有疑问。

    <javascript语言精粹>是一本很棒的书籍,其中作者在附录列出了12种他所认为的javascript语言中的糟粕. 我最近开始跟读前端前辈的博客,其中读到了阮一峰的<12种不宜 ...

  2. 精通javascript、javascript语言精粹读书笔记

    于是选择两本书做最后的冲刺: 精通javascript(jquery之父著作),javascript语言精粹.希望我也能成为一个javascript的好手. Dom Elements的属性 精通jav ...

  3. Javascript语言精粹之Array常用方法分析

    Javascript语言精粹之Array常用方法分析 1.Array常用方法分析 1.1 Array.prototype.sort() Javascript的默认比较函数假定被排序元素都是字符串,所以 ...

  4. 《javascript语言精粹》读书笔记——函数

    这几天发现了一本好书,又薄又精辟,<JavaScript语言精粹> 看了对象.函数这两节,发现书如其名,确实是精粹. 函数的调用 函数调用的方式有四种: - 方法调用模式 - 函数调用模式 ...

  5. 《JavaScript语言精粹》学习笔记(函数(2))

    <JavaScript语言精粹>学习笔记(函数(2)) 函数(Functions) 参数(Arguments) 当参数被调用时,会得到一个"免费"的参数数组argume ...

  6. javascript语言精粹 微盘_JavaScript语言精粹(修订版)pdf

    摘要 "学习.理解.实践大师的思想,我们才有可能站在巨人的肩上,才有机会赶超大师,这本书就是开始." "这是一本介绍JavaScript语言本质的重要书籍,值得任何正在或 ...

  7. 《JavaScript语言精粹 修订版》 读书笔记

    之前看到这篇文章, 前端网老姚浅谈:怎么学JavaScript?,说到怎么学习JavaScript,那就是 看书.分析源码. 10本书读2遍的好处,应该大于一本书读20遍. 看书主动学习,看视频是被动 ...

  8. JavaScript语言精粹——函数(第二部分)

    九.参数 十.返回 十一.异常 十二.扩充类型的功能 十三.递归 十四.作用域 十五.闭包 十六.回调 十七.模块 十八.级联 十九.套用 二十.记忆 九.参数: 当函数被调用的时候,会得到一个 &q ...

  9. JavaScript语言精粹学习之继承

    JavaScript也有面对对象,面的对象很重要的一点就是继承,语言精粹中的继承篇章写的复杂难懂,且有些东西和现在的es6相比太过于老了,读完后这里我自己整理了一下JavaScript的继承,也对语言 ...

  10. JavaScript 语言精粹读书笔记

    最近在看 赵泽欣 / 鄢学鹍 翻译的 蝴蝶书, 把一些读后感言记录在这里. 主要是把作者的建议跟 ES5/ES5.1/ES6 新添加的功能进行了对比 涉及到的一些定义 IIFE: Immediatel ...

最新文章

  1. createDocumentFragment
  2. python网页数据存入数据库_python网络爬虫抓取动态网页并将数据存入数据库MySQL...
  3. Windows内核新手上路3——挂钩KeUserModeCallBack
  4. 计算机二级c语言题型2018,计算机二级C语言题型和评分标准
  5. 第四范式与赛诺贝斯达成战略合作,开启MarTech新篇章
  6. 被新基建点名的大数据,有哪些书最值得读?
  7. Android把数组从大到小排列,Android SparseArray 排序
  8. 安卓JNI开发-01
  9. 【Elasticsearch】Elasticsearch 的异步搜索原理解析 _async_search
  10. linux打印jvm内存堆栈_jvm内存堆栈监控之jmap篇
  11. Migrate blog from blogcn here
  12. CAGradientLayer简介 实现颜色渐变
  13. 计算机应用基础146jpg,计算机应用基础——复习题2.pdf
  14. 教务管理系统——数据库课程设计mysql+java
  15. OTSU算法实现二值化
  16. 图像处理中的深度学习技术
  17. Linux服务篇之SSH服务
  18. PrimeNG TreeTable异步加载子树
  19. 从eclipse官网下载32位eclipse并配置tomcat
  20. 关于宇宙大爆炸的理论模型

热门文章

  1. 彻底理解mmap()
  2. 如何制作3dmax三维地形图
  3. 美赛数学模型(二)——神经网络
  4. CRT终端利用VBscript实现 多台华为交换机自动备份配置
  5. 金仓数据库KingbaseES高可用概述(高可用性需求分析与架构确定)
  6. php设置rabbitmq重试,RabbitMQ实现重试次数方法一-SpringRetry
  7. CIFAR10数据集转化为图片
  8. Android的页面布局
  9. unity案例,秘密行动(案例笔记)
  10. Understand:高效代码静态分析神器详解(一)