JavaScript的用途是什么?

4

Javascript的主要口号是什么?它如何有助于开发应用程序?我知道Html,它如何帮助我学习Javascript?JS和html之间有何关系?


7
没人只是会去访问http://en.wikipedia.org/wiki/Javascript吧?~我认为这个问题很荒谬。 - jcolebrand
1
@drach - 我认为我们在面对语言障碍。 - ChaosPandion
3
我认为JavaScript没有座右铭,但也许它应该有一个。有什么建议吗?我会选择“在名称中加入'Java',这样它就可以和Sun公司的酷孩子们一起玩了”。:P - FrustratedWithFormsDesigner
4
在某个阶段,我看到了一个常见问题解答,其中包括:“问题:Java和Javascript之间的关系是什么?回答:它们的名称以相同的四个字母开头。” - Jay
1
@ChaosPandion @drach 是的,我的母语不是英语。当我在维基百科上阅读有关JS的文章时,我不能理解所有用高级英语表述的术语。所以我只能来到Overflow,希望人们可以用普通英语解释这些术语帮助我。 - Gladiator
显示剩余7条评论
13个回答

28

Javascript的主要用途是可以让你在用户的浏览器中发生事情,而无需来回发送消息到服务器。有很多原因可以解释为什么你想要这样做。

例如,向服务器发送消息并获得回复是一个相对较长的过程:几乎总会有明显的时间延迟,并且可能需要数秒钟的时间。直接在浏览器中进行操作可能会快得多。因此,如果你想给用户一个“数据无效”的消息,这个消息如果由Javascript提供,它可以更快地呈现出来。

同样,使用Javascript你可以逐个字段进行验证,而不必等待用户填完整个屏幕并点击提交按钮。例如,假设您向用户展示一个屏幕,要求他输入交易日期和货币金额。用户输入了一整屏幕的日期和货币金额——可能有20或30个交易——然后点击提交。如果用户试图输入你不认识的格式,例如当你期望年-月-日时输入日/月/年,则使用Javascript可以在第一个无法识别的日期上给出错误提示。如果通过一次往返到服务器,用户就会在告诉他做错了之前输入一整个屏幕的无效日期。

同样,使用往返到服务器来进行动画处理将很难实现,速度太慢了。一种方法是使用Javascript。(当然还有其他方法。)


8

Javascript可以用于许多不同的事情。

当与浏览器中的HTML一起使用时,它可以添加一些非常酷的动态和交互式特性(与历史上静态的HTML相比)。

当与像Node.JS这样的服务器端引擎一起使用时,它可以执行任何其他服务器端语言能够执行的任务。


1
不要忘记 Adobe!(尽管有时候他们让我很生气。) - ChaosPandion

4

JavaScript可以让您对静态HTML进行更改,并在浏览器中实时更新。使用JavaScript时需要考虑的主要事项是:不要信任它来验证内容,并将其作为功能而非网站运行的必备条件(换句话说,如果用户禁用了JavaScript,您的网站仍应能够正常运行)。


1
+1 不信任输入的验证虽然是一个好主意,但在向服务器提交之前运行客户端验证仍然是为了更好的用户体验。但你仍然需要服务器端验证! - J.Hendrix

4

http://en.wikipedia.org/wiki/Javascript

  • 明目张胆地抄袭他们...

JavaScript是ECMAScript语言标准的一种实现,通常用于在主机环境中启用对计算对象的编程访问。它可以被描述为一种基于原型的面向对象脚本语言,具有动态、弱类型和一级函数的特点。它也被认为是像Scheme和OCaml这样的函数式编程语言,因为它具有闭包并支持高阶函数。

JavaScript主要以客户端JavaScript的形式使用,在Web浏览器中实现,以提供增强的用户界面和动态网站。然而,它在Web页面之外的应用中的使用也是重要的。


需要翻译的内容:

需要注意的是:JavaScript没有“主要口号”,因为它是一个标准,而不是一个项目。对于项目,请查看jQuery,这是该网站上开发人员最常采用的工具包之一。有许多工具包可用于处理JavaScript。

在处理JavaScript时的主要考虑因素是要了解它通常与文档对象模型一起使用,因此这是大多数人提供JavaScript使用方法的地方。但是,它是一种完全功能的语言,有办法将其编译成本地机器代码。 JIT编译器是实现这一点的一个例子,因为大多数浏览器都实现了JIT编译器,将JavaScript转换为本地字节码以在主机系统上执行。


为什么要使用JavaScript?你可以将其用于客户端验证表单元素(最常见的之一),用户交互(在浏览器窗口中拖放,插入新的表单元素,如文本框以添加新记录到表格中),用户通知(Facebook通知),异步从服务器检索数据并将其加载到页面中(AJAX)或其他可能的操作。在此列出JavaScript可用于的每个功能将需要英雄般的努力。
由于它是一种原型语言,人们可以用JavaScript编写C风格的程序。
由于它是一种函数式语言,人们可以用JavaScript编写Lisp风格的程序。
如果您接受过计算机科学的正式培训,那么这两种语言可能会很熟悉。大多数计算机程序都是用这两种风格编写的。由于JavaScript允许开发人员使用他最流利的风格来编写代码,因此可以证明这是一个优点,因为开发人员能够在介绍语言时更快地开始编写代码。
我曾经看到过用JavaScript编写的具有复杂图形的完整游戏。我也见过依赖HTML5的基本操作功能的简陋视频播放器用JavaScript编写的情况。
然而,由于JavaScript最常用于Web应用程序中,重要的是要记住JavaScript被用作客户端语言。它不会影响服务器上的操作。它可以被bypassed。不要依赖JavaScript来完成应用程序的所有功能。
希望这可以帮助您并为您提供一些指导,回答您的问题?

4
在网站开发中,有三个主要组件:HTML、CSS和Javascript。
HTML用于保存数据、内容、网页或Web应用程序的结构。
CSS用于网页或Web应用程序的样式、布局和视觉效果。
而Javascript则通常用于网页或Web应用程序的动态或响应性方面:动画、表单验证、ajax等等。

JavaScript和Ajax有什么关系?如何将它们连接起来? - Gladiator

2

您可以使用JavaScript使您的页面更具交互性。在将内容发送到服务器之前,您可以检查内容并为用户节省时间。您可以使用JavaScript创建许多有趣的功能...许多Web应用程序都依赖JavaScript作为其主要引擎。


2

您可以使用Javascript开发应用程序中的客户端“事物”,这可以避免再次访问服务器,这对于降低带宽使用率、减少服务器强度使用以及提高客户端用户体验非常有益。一个流行的框架是jquery。


2
这是一种脚本语言,可用于构建动态页面,但更重要的是,它将运行这些应用程序的一部分计算工作从服务器转移到客户端机器上。
JavaScript非常强大,所以很难列出可以使用它完成的所有任务。如果没有它,我不知道Web 2.0会是什么样子。
如今,JavaScript变得非常流行。Google已经投入了大量精力使JavaScript在V8 JavaScript Engine中运行更快,这导致了对服务器端JavaScript使用的兴趣增加。 NodeJs是一个很好的例子,它是一个服务器端应用程序,现在在异步和函数式编程有意义的用例(如网络应用程序)中越来越受欢迎。
其他应用程序,如基于WebKit的无头浏览器PhantomJs,在构建JavaScript测试应用程序或自动Web爬虫时是自然选择(CasperJs是PhantomJs项目的一个很好的例子)。
JavaScript的概念比其他语言更难,因为它既是原型化的又是函数式的。虽然可以使用一些多年来已经建立的标准模式设计应用程序,但实现完全相同的模式有很多方法,并且没有最佳实践或对实现这些设计的最佳方式的共识。
现在有许多工具,如CofeeScriptTypeScript,它们帮助缩小这个差距,允许开发人员使用面向对象的语言编码,该语言编译为JavaScript的标准面向对象子集。

1
我认为Web2.0的面貌在很大程度上是由JavaScript的使用所定义的...(不是XML、RSS等,仅仅是由于交互层而定义了Web2.0的面貌) - jcolebrand

2

JavaScript是一种由Web浏览器执行的语言,通常用于制作动态网页。一个简单的示例是,如果您希望对用户在表单中输入的值执行一些简单的计算(例如运输成本),您可以让用户每次想要答案时都将数据提交到服务器,或者您可以有一个按钮来执行JavaScript计算并向用户显示答案。当然还有更复杂的例子。 AJAX是JavaScript目前流行的应用程序之一。


2
现在JavaScript已经可以用来开发桌面应用了!例如,ExtJs就是一个完美的库。请注意,本文保留了原有的HTML标签。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接