Redian新闻
>
每天一个知识点:寻找JavaScript和Java的区别

每天一个知识点:寻找JavaScript和Java的区别

公众号新闻

前言

    昨天在刷LeetCode时,在对之前的一道简单题(13.罗马数字转整数)进行二刷时,由于之前在学校学的是Java,所以之前已经用Java做过一遍了,而最近在学JS,我就尝试着用JS去做,也很快的做出来了。但当我发现同样的代码JS花费的时间为116ms,而Java仅仅花费2ms,这使得我对这两门语言产生了浓厚的兴趣,我尝试着去网上查找资料,最终写下这篇文章。

JavaScript(耗时116ms):

Java(耗时2ms):

为什么会有如此大的差别呢?

    之所以会有如此大的差别,主要是由于这两门语言在设计和执行环境上的差异导致的,主要分为以下因素:

编译与解释

  • Java:编译型语言,Java代码首先会被编译成字节码,然后在Java虚拟机(JVM)上运行。Java的这种编译方式可以进行很多优化,从而提高代码的执行速度。

  • JavaScript:解释性语言,代码在运行时,会由浏览器的JavaScript解释器逐行进行解释,然后再交给V8引擎去执行。然而,正是因为这种解释性质,会使得JavaScript的执行速度通常较慢。

    这就相当于在JavaScript执行代码时存在一个中间商,将解释器类比为中间商,最终到客户手里商品的价格自然就会更高。所以JavaScript耗时会比Java长。

执行环境不同

  • Java:执行环境为Java虚拟机(JVM),它是一种高度优化的运行时环境,专门设计用于执行Java字节码。由于JVM具有即时编译器(Just-In-Time Compiler),它可以将字节码编译成的字节码转换为本机机器代码,这将大大提高代码的执行速度。

  • JavaScript:执行环境为浏览器或者Node.js等运行时环境。而这些环境都缺少了像Java的执行环境JVM那种强大的编译和优化工具,因此执行代码时性能较差,执行速度慢。

    JVM就相当于游戏加速器,而JS没有,这使得Java的执行性能要远高于JavaScript.

既然Java比JavaScript快,为什么JavaScript没被淘汰呢?

    你别看两门语言名字差不多,但是他们相同之处却非常少,运用的领域也各不相同。Java和JavaScript这两种语言没有直接关系,尽管它们的名称相似。其中Java是由Sun公司(现在是Oracle Corporation)开发的,而JavaScript最初由Netscape Communications Corporation开发,后来被标准化为ECMAScript。

用途不同

  • Java:通常用于开发大型、高性能的应用程序,包括企业级应用、桌面应用、游戏等,我们熟知的编译软件IDEA、Eclipse、netbean都是Java做的。游戏方面,曾爆火的游戏《我的世界》就是用Java开发的。Android的核心系统也是采用Java语言编写的,尤其采用Java的核心库,如Apache Harmony来实现JVM。因此,它在执行速度和性能方面进行了很多优化。

  • JavaScript:主要用于前端网页的开发,市面上现今大部分网站,以及微信小程序都是在JS结合其他后端语言,比如Node.js等语言进行开发的,其主要实现的目的是与用户交互,因此它的执行速度通常不是关键问题。


语言类型不同

  • Java:静态类型语言,类型检查在编译时进行,这有助于检测和预防很多错误,但也增加了编程的复杂性。

  • JavaScript:动态类型语言,类型检查发生在运行时,这使得代码更加灵活,但也可能导致在运行时出现类型相关的错误。


其他不同之处


    1、对象模型不同

  • Java:一种严格面向对象的编程语言,所有代码都必须包含在类中,支持继承、封装、多态等面向对象编程概念。

  • JavaScript:虽然也可以支持面向对象编程,但其对象模型不同于Java。JavaScript的对象是动态的,可以随时添加或删除属性和方法。


    2、类型系统不同

  • Java:一种强类型语言,需要在编写代码时明确定义变量的类型,同时在编译时进行类型检查。

  • JavaScript:是一种弱类型语言,变量的类型可以在运行时动态更改,不需要明确指定类型。


总结

    Java的执行速度确实高于JavaScript,但Java和JavaScript也是两种完全不同的编程语言,它们在用途上以及语法上存在很多不同之处,开发者需要根据具体项目需求来选择使用哪种语言。尽管它们有相似的名称,但它们没有直接关联。

链接:https://juejin.cn/post/7294597695478431780

(版权归原作者所有,侵删)

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
趣图:ChatGPT 与 Stack Overflow 的区别加拿大留学知识,Co-op和in placement的区别?换季大捡漏!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢短袖买一送一!库存不多,手慢无!真没想到风衣1折!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢(雅格狮丹)风衣都让我们找来了“喜欢一个人和爱一个人的区别”火了172年!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢长袖Polo衫,又好穿又有品!机器伦理与AI未来:寻找家电跨越智能的最后一块拼图新移民必读:寻找中文家庭医生秘诀!火了172年!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢来了,又好穿又有品!!大捡漏!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢雅格狮丹出系列了!五防保暖夹克、POLO衫、西裤随便搭1折入!穿过国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢的人,才是真正的有品!𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢三防夹克,经典、优雅不凡的英伦风!还送长袖T恤!读张作霖传有感1折入!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢(雅格狮丹)三防夹克,防风防污防泼水,好穿又有品!快乐成长,快乐生活:寻找内心的平衡与幸福真没想到!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢雅格狮丹的风衣都让我们找来了,1折限时抢换季大捡漏!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢经典纯色T恤,买一送一!英国百年贵族奢牌𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢休闲卫衣!经典、优雅不凡的英伦风~Woody Allen\'s World and the Audience\'s Reality路演中陈滢:寻找IR进化的底层逻辑真没想到!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢(雅格狮丹)风衣都让我们找来了(1折限时抢)好东西真不一样!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢雅格狮丹卫裤,1折限量抢!双11特惠|国际重奢疯了?!𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢(雅格狮丹)90%白鸭绒羽绒服,保暖防泼水,1折开抢!VCE物理超高频考题解析,结合了gravitational force,circular motion和energy这三个知识点渔歌子(2):千岁冰川横卧山1折入!穿过国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢的男人,才会明白什么是品质!国际重奢卷疯了?!𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢(雅格狮丹)90%白鸭绒羽绒服,保暖防泼水,1折开抢!飞越兴安:寻找勇敢的鄂伦春……国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢中长款风衣,品位与优雅,兼顾帅气和女人味!中元节拜鬼神--调寄《定風波》1折入!国际重奢𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢雅格狮丹三防夹克,下单送长袖T恤!文学城管理层与技术人员英国百年奢牌 𝘼𝙦𝙪𝙖𝙨𝙘𝙪𝙩𝙪𝙢 90%白鸭绒羽绒服!保暖防泼水,4种款式!警方通缉:寻找多伦多大学偷窥狂!【宏观市场】广谱利率:寻找利率之锚
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。