前端面试-难点问题2-java和javascript的区别

  经过多方面的参考,结合自己掌握的知识,总结了一下java和javascript的区别。欢迎大家评论!

  一、关系

    虽然java和javascript在名字和语法上有一点相似,并且有一些联系,javascript语法源自java。但其实他们是两个公司开发的不同的产品,两种完全不同的编程语言。Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合于Internet应用程序开发,前身是Oak语言;而JavaScript是Netscape公司的产品,其目的是为了扩展Netscape Navigator功能,而开发的一种可以嵌入Web页面中的基于对象和事件驱动的解释性语言, 前身是Live Script。

  二、程序运行过程

    java是编译执行,源文件必须经过编译生成中间文件,最终执行的是中间文件,因而需要安装jre或jdk(包括jre),并进行环境配置。而javascript是解释执行,无需生成中间文件,“读一句,执行一句”,执行一般可以通过三种方式:

    1.一般浏览器都自带js解释器,可以通过浏览器直接使用;

    2.可以安装专门的解释器软件node.js,执行.js文件;

    3.随网页一起执行,使用<script>标签,可以将javascript语句放入标签中,也可以通过标签引入外部.js文件。

 三、数据类型

    java是一种强类型语言,当涉及到数据时,声明必须指定数据类型,比如:int a = 10;

    而javascript是一种弱类型语言,对数据声明时,只需用关键字 var 即可,如:var a = 10; 具体的数据类型根据变量存储的内容进行识别。

 四、数组

    java中数组表示一组存储相同数据类型值的变量的集合,数组由相同类型的元素组成,长度固定。

    而javascript数组是无类型的,数组元素可以是任意类型,并且同一个数组中的不同元素也可以有不同的类型,数组的元素甚至也可能是对象或其他数组,这允许创建复杂的数据结构,如对象的数组和数组的数组。javascript数组是动态的,根据需要它们会增长或缩减,并且在创建数组时无需声明一个固定的大小或者在数组大小变化时无须重新分配空间。

 五、继承的实现

    java是一种真正面向对象的语言,继承是通过类的方式实现的;而javascript是基于对象的语言,继承是通过原型对象的方式实现的。

 六、重载的实现

    重载:方法,根据传入的参数列表的不同,执行不同的任务。

    java在语法上能够实现重载;而javascript在语法上是不支持重载功能的,但可以通过arguments对象模拟实现。

    

   

posted @ 2016-07-04 19:04  ESnail  阅读(1712)  评论(0编辑  收藏  举报