美文网首页
第一章《精华》

第一章《精华》

作者: CCCCCccccccch | 来源:发表于2019-11-22 18:38 被阅读0次

    引言:JavaScript中鸡肋部分的比重很大,在很短的时间内,它从不存在发展到全球采用,它从没有在实验室里被试用和打磨。当它还非常粗糙时,它就直接被集成到网景的Navigator2浏览器中。随着java的小应用程序的失败,JavaScript变成了默认的“网页语言”。作为一门编程语言,JavaScript的流行几乎完成不受它的质量的影响。

    1、为什么要使用JavaScript

    JavaScript是一门重要的语言,因为它是web浏览器语言。它与浏览器的结合使它成为世界上最流行的编程语言之一。同时,它也是世界上最被轻视的编程语言之一,浏览器的API和文档对象模型(DOM)相当糟糕,导致JavaScript遭到不公平的指责。其实在任何语言中处理DOM都是一件痛苦的事,它的规范制定得很拙劣并且实现互不一致。JavaScript也不是所谓的主流语言(像C、C++、java、Python等),但它是一门拥有极强表达能力的语言,当你知道你要做什么的时候,它甚至能比其他语言表现得更好;当你对这门语言或者编程没有太多了解的时候,你也能用它来完成工作。

    2、分析JavaScript

    JavaScript建立在一些非常好的想法和少数非常坏的想法之上。

    那些非常好的想法包括函数、弱类型、动态对象和一个富有表现力的对象字面量表现法。那些非常坏的想法包括基于全局变量的编程模式

    现今大部分编程语言中要求强类型,其原理在于强类型允许编译器在编译时检测错误。我们能越早检测和修复错误,付出的代价就越小。JavaScript是一门弱类型的语言,所以JavaScript编译器不能检测出类型错误。但事实证明,强类型并不会让你的测试工作轻松。另一方面,弱类型是自由的,无需建立复杂的类层次。

    JavaScript有非常强大的对象字面量表示法。通过列出对象的组成部分,它们就能简单地被创建出来。这种表示法是创建流行的数据交换格式——JSON的灵感。

    原型继承是JavaScript中一个具有争议的特性。JavaScript有一个无类别的(class-free)对象系统,在这个系统中,对象直接从其他对象继承属性。这真的很强大,但对那些被训练使用类去创建对象的程序员来说,原型继承是一个陌生的概念。如果你尝试对JavaScript直接应用基于类的设计模式,你将会遭受挫折,但你如果学习JavaScript的原型本质,那你的努力将会有所回报。

    JavaScript在关键思想的选择上饱受非议。JavaScript依赖于全局变量来进行连接,所有编译单元的所有顶级变量都被撮合到一个被称为全局对象的公共命名空间中。这是一件糟糕的事情,因为全局变量是魔鬼,并且在JavaScript中它们是基础性的。幸好,JavaScript也给我们提供了缓解这个问题的处理方法。

    JavaScript是一门有许多差异的语言。它包含很多错误和sharp edges,所以你可能会疑惑为什么我要使用JavaScript,有两个答案。第一个是你没有选择,web已经变成一个重要的应用开发平台,而JavaScript是唯一一门所有浏览器都可以识别的语言。很不幸,java在浏览器中失败了,否则想用强类型语言的人就有其他选择了,也恰恰说明JavaScript确实有过人之处。另一个答案是,尽管JavaScript有缺陷,但是它真的很优秀。它既轻量级又富有表现力,并且当你一旦熟练掌握了它,就会发现函数式编程是一件很有趣的事。

    但为了更好的使用这门语言,你也必须知道它的局限。这门语言的精华也足以弥补它的不足。

    相关文章

      网友评论

          本文标题:第一章《精华》

          本文链接:https://www.haomeiwen.com/subject/hdqqwctx.html