javascript属于什么语言,javascript主要用来干嘛

您所在的位置:网站首页 c语言主要用来干嘛 javascript属于什么语言,javascript主要用来干嘛

javascript属于什么语言,javascript主要用来干嘛

2024-06-26 02:31| 来源: 网络整理| 查看: 265

要说JavaScript在Web开发中正在兴起,这是一种轻描淡写的说法。 实际上,几年前,著名的程序员Jeff Atwood创造了Atwood定律 , 他说 :

可以用JavaScript编写的任何应用程序最终都将用JavaScript编写 Python解释器的安装步骤。

在撰写本文时,JavaScript框架和库太多了,以至于不知道从哪里开始,尤其是对于初学者而言。

而且我知道,我们在这里发布的许多内容都是针对那些已经具有编写Web应用程序或进行Web开发工作经验的。 但这不是本文的目标读者。

相反,这是专门为从未(或几乎没有)编写过JavaScript线,想进一步了解该语言并了解其中内容的人们而编写的。 此外,我们想介绍一下它的用法以及对它的期望。

简而言之,如果您是一位经验丰富的专业人员,那么本文不适合您; 但是,如果您对进入JavaScript感到好奇,但不确定从何入手,那么也许此入门将帮助您朝正确的方向发展。

学习JavaScript:完整指南

我们已经建立了完整的指南,可以帮助您学习JavaScript ,无论您是刚开始作为Web开发人员还是想探索更高级的主题。

JavaScript定义

您可能已经听说过JavaScript被称为“客户端脚本语言”,这是另一种说法,它是一种在Web浏览器中运行的编程语言。

另外, 维基百科也可以这样定义 :

JavaScript是一种高级,动态,无类型且可解释的编程语言。 它已在ECMAScript语言规范中进行了标准化。

以上所有内容都是正确的(具有不同程度的复杂性),但是值得注意的是JavaScript也可以在服务器端运行。 不过,这已经超越了我们自己。 取而代之的是,让我们先讨论以上几点,然后在本文后面讨论服务器端JavaScript。

高级 。 当一种编程语言是高级语言时,它被认为是构建的,而无需了解有关底层计算机的详细信息。 您不必管理内存,不必知道运行的是哪种类型的处理器,也不必处理诸如指针之类的事情(例如C或Assembly语言)。动态的 。 动态语言允许开发人员在程序运行时通过添加新代码或引入新对象(例如Post对象)来扩展语言的某些方面,而无需编译程序。 这是JavaScript的强大功能。未输入 。 如果您有任何编程经验,那么您可能会遇到过某些类型的语言,这些语言需要您声明要使用的变量的类型。 例如,也许您的变量将存储string或boolean 。 在JavaScript中,这不是必需的。 相反,您只需使用var关键字声明一个变量。解读 。 当一种语言是一种编译语言时,您编写的代码将转换为可执行的二进制文件,您可以将其分发给其他人。 在Windows中,这些文件称为EXE文件。 在OS X上,这些通常是您从App Store下载的程序,或者是您拖到Applications目录中的程序。 JavaScript被解释,这意味着没有编译器。 相反,代码是经过解释的(与PHP一样),因此有一个称为解释器的中间软件位于您编写的代码和计算机之间,以来回翻译指令。标准化 。 JavaScript 是标准化的(其正式名称为ECMAScript ),这意味着实施该标准的任何浏览器都将提供与任何其他浏览器相同的功能。 如果未标准化,则Chrome可能会提供Edge无法提供的某些功能,反之亦然。

既然我们已经涵盖了语言的属性,我们就可以讨论有关该语言的某些方面和细微差别。

尽管以上所有内容都很重要,但了解语言的工作方式(尤其是如果您使用其他语言的情况)也很重要,这样您就不会怀有关于其可能如何工作或如何工作的预先构想。它应该工作。

相反,我宁愿介绍一下它是如何工作的,以便您可以开始编写代码并确切地了解您正在做什么。

关于语言

最重要的是,JavaScript是一种面向对象的编程语言,但是它可能与您通常看到的有所不同(如果您以前使用过一种面向对象的编程语言)。

JavaScript是所谓的原型语言。 这意味着JavaScript中的所有对象(例如String )都基于原型。

这使我们作为开发人员能够通过使用原型继承为对象添加其他功能:

基于原型的编程是一种面向对象的编程,其中行为重用(称为继承)是通过克隆用作原型的现有对象的过程来执行的。

我认为,如果您以前从未使用过面向对象的语言,那么此时您可能会有所优势,因为您没有为了思考其工作原理而需要转变的概念模型。

另一方面,如果您使用过这些类型的语言,那么我认为有必要区分原型继承与经典继承的不同之处:

在经典继承中 ,我们作为开发人员将编写一个类。 可以从此单个类创建多个对象。 此外,我们然后可以编写从该类继承的另一个类,然后创建这些类的实例。 在这种情况下,子类将与其基类共享代码。 因此,当您创建子类的实例时,将同时获得子类和父类的功能。在原型继承中 ,没有类。 相反,您只需定义一个对象并引入任何必要的功能。 当您想向现有对象添加功能时,可以通过将其添加到对象的原型中来实现。 如果尝试在对象(例如Number上调用方法,则它将首先在该对象上查找该方法。 如果找不到它,它将在链中向上移动,直到找到该方法为止(该方法可能存在于基础Object )。

最后,也许最重要的一点是,当您通过对象的原型对对象进行更改时,使用该对象的每个人都可以访问它(至少在您的环境范围内)。

它确实很强大,很酷,但是如果您不习惯在这样的环境中工作,思考的方式也会稍有改变。

我们如何使用JavaScript?

就我们实际使用JavaScript的方式而言,它最终取决于您的目标。 一方面,使用JavaScript意味着您需要在网页上“使某些事情发生”。 它旨在控制行为。

这可能是引入一个元素,删除(或隐藏)一个元素或类似的事情。 然后,Web进行了一些改进,浏览器便能够对服务器进行异步调用,处理响应,然后根据此响应更改页面的状态。

所有这些都是通过Ajax实现的。 如果您正在阅读此书,则可能会熟悉该术语。 如果不是,您可以将其视为JavaScript调用托管页面的服务器的一种方法,然后处理它收到的所有响应而无需重新加载页面 。

但是它已经成熟了。

Google开发了一种称为V8的高度复杂JavaScript解析引擎,其他浏览器也正在努力提供最佳JavaScript性能。

Chrome V8 Google JavaScript引擎的登录页面

实际上,我们现在能够使用Node.js之类的工具在服务器上编写JavaScript。 此外,我们甚至能够构建在我们的移动设备上运行的混合应用程序。 这意味着我们能够通过使用JavaScript为手机,平板电脑和台式计算机构建解决方案。

Nodejs主页,一个用于在服务器上编写JavaScript的运行时引擎

这来自曾经被用作在屏幕上制作动画的一种语言。 所有这些要说的是,如果您不熟悉JavaScript,请不要小看它。

“我应该对语言有什么期望?”

上面的所有内容都很有趣,并且很有趣,但是我们从JavaScript的角度可以期待什么呢?

无论您是初次使用该语言,还是正在学习来自另一背景的新语言,对于该语言所提供的功能都抱有一定的期望。

尽管我们从内部角度讨论了该语言的工作方式,但实际上并没有真正讨论该语言中可用的对象,更不用说API了。 老实说,用该语言介绍API和内置函数将是一篇文章。

但是覆盖其内置对象吗? 在结束本文之前,我们可以回顾以下内容:

对象 。 所有其他对象都从其继承一些基本功能的基础对象。功能 。 由于JavaScript确实是面向对象的,因此这意味着一切都是对象,包括函数。 因此,当您创建新函数时,将创建对具有函数类型的对象的引用。 函数具有可以在运行时检查的属性(例如传递给函数的参数)。布尔值 。 该对象用作布尔值的对象包装。 在许多语言中,布尔值是true或false的数据类型。 在JavaScript中,您仍然可以使用这些值,但是将它们理解为对象。编号 。 在许多编程语言中,有一些原始类型,例如float , int , double等等。 在JavaScript中,只有数字类型,它也是一个对象。日期 。 在编程中处理日期从来都不是一件有趣的事情,尤其是在引入时区时。 我不能说JavaScript可以解决与时区有关的所有问题,但是使用日期(从年份和月份到日期,小时,分钟和秒的所有日期)都可以使其变得更加容易。字串 。 几乎每种编程语言都具有原始字符串数据类型。 JavaScript没什么不同,除了您所期望的那样,字符串是一个具有自己属性的对象。

请记住,您在上面看到的所有类型都是具有自己可以调用的属性(和函数)的对象。 这并不意味着您需要调用构造函数来实例化变量。 也就是说,您可以创建字符串,布尔值和数字,如下所示:

var example_string = 'Hello world!'; var example_boolean = true; var example_number = 42;

但是,最终,它们仍然是对象。

要明确的是,这些是基本对象。 有许多更高级的对象值得探索,特别是如果您要使用错误处理,Arrays之外的各种类型的收集等等。

如果您有兴趣阅读有关这些的更多信息,那么我强烈建议您在Mozilla开发人员网络中查看此页面 。

有哪些库和框架可用?

如果您一直紧跟JavaScript经济中存在的各种框架,库和其他工具,那么您绝不会落后于经济的活力。

但是本文针对的是那些希望开始使用JavaScript的人。 现在,您已经对语言的结构和工作方式有了基本的了解,是时候来看看提供的有助于简化Web和/或应用程序开发的库和框架了。

jQuery是一个旨在提供跨浏览器API的库,该API允许您“写得更少,做得更多”。Angular是一个JavaScript框架,旨在使构建单页应用程序更加容易。React是一个用于构建用户界面JavaScript库。Backbone旨在通过使用模型,集合和视图为Web应用程序提供结构。Ember.js是用于“创建雄心勃勃的Web应用程序”的另一个框架。和更多。

这远远不是可用功能的完整列表,而是一个开始,并且是熟悉JavaScript的人员至少应该知道的少数选项,即使您不对其进行任何工作也是如此。

并且,当您开始学习JavaScript并开始使用其中一些工具时,您可能会发现其中一些在您自己喜欢的应用程序中的流行程度。

学习JavaScript

正如您所期望的那样,Envato完全是为了“向全球数百万人传授技能”。 那么,如果其中不包含指向我们一些更流行JavaScript文章和课程的链接,那么会是什么样的帖子呢?

测验:JavaScript ES6,您知道合适的工具吗?用JavaScript兑现承诺使用WordPress和Angular.js创建单页应用程序ES6中模板字符串的天才JavaScript ES6基础测试角度指令适用于Windows 10 Universal AppsJavaScript

所有这些资源都是入门JavaScript并将其添加到Web开发技能库中的理想选择。

结论

当涉及到Web开发时,JavaScript将保留下来。 尽管您可能不会使用所谓的“原始JavaScript”,而是选择了许多可用的库和/或框架之一,但JavaScript是几乎每个Web开发人员都应该知道的语言。

当然,并不是每个人都在前端工作。 有些纯粹是服务器端开发人员。 有些纯粹是客户端开发人员。 尽管如此,我们所有人都必须共同努力,以确保应用程序的各个部分相互通信。

为此,至少重要的一点是要了解如何通过JavaScript将来自客户端的数据发送到服务器端,以及如何在服务器端处理数据然后将其返回给客户端以任何方式使用。

不要仅仅因为您不是前端开发人员就这么快地注销JavaScript。 奇怪的是,您正在使用的人正在使用它,并且需要您的工作才能将应用程序的各个部分捆绑在一起。

当然,本文只是从头开始。 正如我在开始时所说的那样,本文的目的是解释什么是JavaScript,如何使用JavaScript以及对JavaScript的期望,特别是对于刚接触该语言的人。

JavaScript已成为事实上的网络工作语言之一。 这并非没有学习曲线,而且还有许多框架和库让您也很忙。 如果您正在寻找其他资源来学习或在工作中使用,请查看Envato市场中可用的资源 。

如果您喜欢本文,还可以在个人资料页面上查看我的课程和教程,如果感兴趣,可以在我的博客上阅读更多有关WordPress和WordPress开发的文章 。

翻译自: What Is JavaScript? | Envato Tuts+



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3