JavaScript和Java的区别[通俗易懂]

JavaScript和Java的区别[通俗易懂]  虽然JavaScript中有Java,但他们之间的关系就如同印度和印度尼西亚一样——没有什么关系。只是JavaScript中的某些语法和Java类似而已。出身不同  Java和JavaScript是由不同公司发布的不同的产品,Java是由Sun公司发布编程语言,而JavaScript是由Netscape公司发布的脚本语言。变量不同1.变量定义时的区别  定义变量时Java和JavaScript有区别。Java是强类型的语言,它要求每个变量必须在定义时明确指出这个变量是什么类型的;而JavaS

大家好,又见面了,我是你们的朋友全栈君。

在这里插入图片描述

  虽然JavaScript中有Java,但他们之间的关系就如同印度和印度尼西亚一样——没有什么关系。只是JavaScript中的某些语法和Java类似而已(语法相似的语言一大堆)。

出身不同

  Java和JavaScript是由不同公司发布的不同的产品,Java是由Sun公司发布编程语言,而JavaScript是由Netscape公司发布的脚本语言。

变量不同

1. 变量定义时的区别

  定义变量时Java和JavaScript有区别。Java是强类型的语言,它要求每个变量必须在定义时明确指出这个变量是什么类型的;而JavaScript是弱类型的语言,它的变量是解释器运行时才知道这个变量是什么数据类型。

2. 真假值不同

  在Java中,只有false表示假,true表示真;而在JavaScript中,0、-0、””(空字符串)、false、null、undefined、NaN这七个值都表示假,而除了这七个值之外,其他的都是真。

3. 数组不同

  Java中数组是固定长度,只能放一种类型数据;而JavaScript中数组长度可变,可以放多种数据类型。

4. 对象不同

  Java中对象在类定义时有几个属性就有几个属性,不能随意添加;而JavaScript中对象的属性可以根据需要再添加或删除属性。

方法不同

1. 定义方法时的区别

  在Java中,不允许在方法中定义方法;而在JavaScript中,允许在方法中定义方法,因为JavaScript将方法视为变量。

2. 方法使用时不同

方法的参数问题

  Java中,方法的参数必须严格按照方法定义时的情况使用;而在JavaScript中,调用定义的方法时,传递的实参个数可以和定义时形参个数不同,例如下面的代码是正确的。

var f4 = function(a, b) { 
   
	alert(a);
	alert(b);
}
f4("1");
f4(1,2,3);

  对于 f4("1"); 来说,相当于第一个参数是字符串1,第二个参数是undefined
在这里插入图片描述
在这里插入图片描述
  对于 f4(1,2,3); 来说,第三个参数没有用处,虽然传递了实参,但是没有形参接收,因此没什么用。

方法的返回值问题

  Java中方法的返回值为 void 的方法不能用来给变量赋值;而JavaScript中可以,此时变量的值是 undefined。

运算符不同

  JavaScript中的运算符和Java中的运算符用法基本相同,唯一不同的是JavaScript中多了一种运算符 === —— 全等运算符,表示值和类型都相等,而 == 表示值相等。

var num = 6;
var snum = "6";
console.log(num==snum);
console.log(num===snum);

在这里插入图片描述
  num 是Number类型的6,而 snum 是String类型的6,使用 == 会返回true,而使用 === 则会返回false。

for 循环

  JavaScript中提供了一种新的 for 循环的形式—— for in

var obj = { 
   
	name: "柚咖",
	age: 18,
	study() { 
   
		alert("正在学习");
	}
}
for (x in obj) { 
   
	alert(x + "---" + obj[x]);
}

  for in 将每对象中的每个属性名和方法名逐一的遍历出来。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156273.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mm理论怎么通俗理解_通俗易懂的理解三观

    mm理论怎么通俗理解_通俗易懂的理解三观讲这个之前,先讲一下什么叫对称加密,什么叫非对称加密:通俗理解:对称加密,一个盒子,两把钥匙,两把钥匙都可以锁和开锁。非对称加密,一个盒子,一个私人钥匙,很多公共的钥匙。两种情况:1,私人的钥匙能锁能开锁,公共的钥匙,只能开锁,不能上锁2,私人的钥匙能锁能开锁,公共的钥匙,只能上锁,不能开锁改革春风吹进家,江南贸易遍开花。随着改革开放的推进,小K家里的生意也越做越好,正洽迎上互联网的…

    2022年10月2日
    0
  • iOS二维码扫描

    iOS二维码扫描导入AVFoundation库,并将它加入.pch预编译文件给相机预览控制器DTCameraPreviewController添加四个私有成员,获取AVFoundation的“终端”、“输入”、“输出”、“管理员”对象:@implementationDTCameraPreviewController{AVCaptureDevice*_camera;AVCaptureDevice

    2022年6月24日
    22
  • Scripting.FileSystemObject对象不能创建的原因「建议收藏」

    Scripting.FileSystemObject对象不能创建的原因「建议收藏」www.u8686.com-信息发布平台Scripting.FileSystemObject对象不能创建的原因        可能是是由于FSO没有注册,或是注册后由于使用专杀工具等提供的解除注册功能。    解决方法:Windows 2000、XP可使用regsvr32 scrrun.dll命令注册。Windows 98使用c:/windows/system/re

    2022年7月14日
    17
  • SQL注入学习「建议收藏」

    SQL注入学习「建议收藏」SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统。学习目的:能找到注入点能判断数据库是什么类型能绕过各种过滤SQL注入平台层注入原因:数据库平台漏洞或数据库配置不安全代码层注入原因:程序员对输入未进行细致地过滤,从而执行了非法的数据查询SQL注入漏洞的方法数字注入字符串注入SQL注入方法有很多种,按数据类型可以分为

    2022年8月20日
    4
  • js也能写3D游戏?

    js也能写3D游戏?看完这本书《3DGameProgramingforKids》之后,发现3D游戏的学习,也可以使用javascript来写的。先要上这个网站https://threejs.org,然后下载它的three.js源码放到一个目录,比如js。然后放入这段代码: Myfirstthree.jsapp body{margin:0;} canvas{w

    2022年5月26日
    119
  • stm32看门狗工作原理

    stm32看门狗工作原理一、为什么需要看门狗?在MCU微型计算机系统中,MCU运行程序很容易受到外界电磁场的干扰,从而造成程序运行错误甚至造成跑飞现象,从而陷入死循环,程序的正常运行被打乱,从而造成不可预料的严重后果,于是人们就设计了一款用于实时监测计算机运行状态的芯片,我们就将其称为看门狗。二、看门狗的作用看门狗会无时无刻的去喂狗,如果程序发生跑飞的现象,那么单片机程序就不能继续去喂狗,继而计数器计数到0,看门狗产生复位脉冲信号。单片机发生程序跑飞的现象才会产生一个复位脉冲强制单片机复位,从而使单片机正常运行。三、看门狗

    2022年6月9日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号