如果您不打算成为网络开发人员,则值得学习javascript吗?


26

我听说Javascript和C ++一样都是完整的语言。这是真的?除了网络内容外,对编程还有什么好处?


确实,这仅对Webstuff有用,因为它需要某种形式的解析器,其中大多数仅内置于Web浏览器中。我的意思是,您可以构建自己的JS解析器供台式机使用,但是比起它,它不会使用大多数与页面上的html交互的javascript ...
dkuntz2 2011年

3
@ DKuntz2我认为Chrome V8 JS Engine是一个独立的库,您可以在桌面应用程序中重用它。您仍然必须开发自己的API。链接:code.google.com/apis/v8/embed.html
Vitor Py

1
还有Theres spidermonkey是Mozillas javascriptparser。它也是独立的,可以在任何应用程序中使用。
jgauffin 2011年

@ dkuntz2 Javascript不仅仅适用于“ Web东西”-我使用node.js作为通用脚本工具以及开发桌面应用程序。
安德森·格林

@VitorBraga我认为使用node.js开发应用程序将是一个不错的选择-它具有一组全面的库,可用于通用脚本任务,例如图像编辑和文件读/写。
安德森·格林

Answers:


23

我认为值得学习,因为它与普通的OO语言完全不同,并且至少您将学习不同的编程范例。

除了浏览器外,它还能有用吗?当然:请检查出node.js,它使用javascript的异步性来创建一个纯粹的非阻塞开发平台,而ouchapps则可以使您使用它构建整个Web应用程序。

如果您相信某些人,那么javascript将会成为未来主要的dev语言,这纯粹是因为javascript的广泛使用。它是迄今为止github上最受欢迎的语言,几乎每个开发人员都对此有所了解。有了诸如node.js之类的项目,javascript就有了美好的未来。




3

尽管Javascript在语法上,面向对象等方面是一种完整的语言,但它的确缺少与尚未内置的东西进行交互的库。例如,它非常适合访问和修改XML数据,但实际上并没有提供很多接口到硬件。

关于堆栈溢出的问题解决了一些问题,这些问题可以在Web编程之外使用。


2

我会说具有动态和功能功能的语言值得学习,但是不一定是Javascript。

LISP比Javascript更具有上述概念,因此即使您永远不需要使用LISP本身,LISP也是一种极好的学习语言。


2

JavaScript可以在Windows和Mac上用于“开箱即用”的shell脚本:

在我看来,在Windows上这是最可口的选择,因为替代品是VBScript和BAT文件(至少在您不能依赖其他安装的情况下)。


Windows上也有PowerShell。
JBRWilkinson

据我所知,PowerShell未默认安装在2008/7之前的Windows版本中。
Joeri Sebrechts 2012年

2

Javascript也用于Greasemonkey脚本,可用于自定义或向您访问的网站添加功能。(该链接指向Firefox扩展,但其他浏览器也可用)

从技术上讲,这当然仍然是“ Web内容”,但是不同之处在于,Web开发人员并不是使用它的(唯一的)Web开发人员。


1

超出基础知识是不值得学习的。

即使您在Web应用程序中工作,但在后端,也要将学习资源用于与您的领域更相关的主题。Javascript只是另一种语言,没有特殊的消息可以极大地丰富您。


2
我不同意。它是唯一广泛使用的基于原型的语言。而且,在广泛的语言中,它是对闭包的最佳支持之一。因此,人们可以使用它学习一些有价值的东西。最后,对于一种解释型语言来说,它的速度非常快。
安德里亚(Andrea)

@Llistes_Sugra如果您认真持有并相信该观点,那么您对JavaScript的了解还不够。我建议您详细了解它,看看是否要修改此意见;我几乎可以肯定您会
杰伊

1

如果需要,您还可以学习其他基于Javascript的技术。学习它们至少会使您理解javascript的语法,当您在运行javascript时会读取网页的源代码。让我们承认,我们都说我们永远不会做X,但是最后总会做。至少一点点。

Qt的新QML语言是一种类似于javascript的好语言,它像语法一样是javascirpt,但用于普通应用程序GUI。玩起来很有意思,您将在不编写网页的过程中学习一些javascript。


1

我打算将此添加为已接受答案的注释,但随后意识到最好将其作为单独的答案。就是说,它更多地是对已接受答案的补充,而不是竞争性答案。

脚本扩展

您可以在系统中嵌入许多适用于大多数主要语言的Javascript引擎。这是使用脚本功能扩展您的平台的理想选择,并且可以避免发明自己的语言。您会立即获得所有学习资料,因此获得用于配置和编写系统脚本的资源会容易得多。


1

Javascript是一种很棒的基础语言

它是 :

  • 强大
  • 简单易学
  • 支持过程和面向对象的范例
  • 快速编写并开始运行
  • 普及了许多现代语言概念-闭包,匿名函数,异步/事件驱动的编程,动态类型/推断
  • 拥有出色的工具(编辑器,运行时,棉绒工具,浏览器)
  • 拥有大量活跃社区的出色在线支持
  • 可以做数学功能
  • 具有图形功能(通过HTML / Canvas)
  • 可以用它来编写应用程序

我个人认为,即使您不会每天使用它,也值得学习。它将拓宽您的思维,以便您在使用其他语言(如C ++或C#)时考虑不同的解决方案-例如,迭代与算法解决方案,动态类型和类型推断。

我已经看到人们使用它来比专业工具更快地处理数字/数据转储,方法是将数据粘贴到他们构建的页面的HTML文本区域中,其中后面带有一些JS代码以处理数据。

还有什么好处呢?

嵌入其他内容:

在过去的12年中,我工作的所有公司都建立了商业产品和内部开发工具,这些工具使用JavaScript(或近亲-ECMAScript,ActionScript等)作为基础,因为它易于学习,并且很容易-集成的(免费)实现(SpiderMonkey和Microsoft Active Scripting SDK)已经准备就绪,并且性能“足够好”,并且一直在不断提高。

在jQuery / Prototype和整个AJAX运动出现之前,对JS的选择似乎并不明显-为什么不使用lex + yacc-able的VBA(shudder)或滚动自己的语言?JS作为一种语言的功能与丰富的小部件/框架结合在一起,意味着不需要编写很多代码,因此,现成的解决方案很有吸引力,因为可以在产品的其余部分上花费更多的精力。

随着语言的能力和速度的提高,对JS的赌注已获得回报。随着更多的开发人员能够使用JS,雇用也变得更加容易。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.