欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > 2025.4.17学习日记 初识JavaScript 以及Java和JavaScript有什么区别

2025.4.17学习日记 初识JavaScript 以及Java和JavaScript有什么区别

2025/4/19 16:12:55 来源:https://blog.csdn.net/2503_90593237/article/details/147313448  浏览:    关键词:2025.4.17学习日记 初识JavaScript 以及Java和JavaScript有什么区别

Java 和 JavaScript 虽然名字相似,但实际上是两种不同的编程语言。

1. 语言背景和设计目的

  • Java:由 Sun Microsystems(现被 Oracle 收购)在 1995 年推出。设计初衷是为了实现 “一次编写,到处运行(Write Once, Run Anywhere)”,用于开发跨平台的企业级应用、大型系统、安卓应用等。
  • JavaScript:由 Netscape 公司的 Brendan Eich 在 1995 年开发,最初的目的是为网页添加交互性,使网页不再是静态的信息展示。现在也广泛用于服务器端开发(Node.js)、桌面应用开发等。

2. 语法特点

  • 类型系统
    • Java:是强类型语言,变量在声明时必须指定类型,且在编译时会进行严格的类型检查。例如:
int num = 10;
  • JavaScript:是弱类型语言,变量的类型由其值决定,在运行时才确定类型。例如:
let num = 10;
num = "Hello";
  • 面向对象
    • Java:是纯粹的面向对象编程语言,所有代码都必须写在类中,通过类和对象来组织代码。例如:
class Person {private String name;public Person(String name) {this.name = name;}public String getName() {return name;}
}
  • JavaScript:是基于原型的面向对象语言,没有传统的类的概念,通过原型链来实现继承。不过 ES6 引入了class关键字,但本质上还是基于原型的。例如:
class Person {constructor(name) {this.name = name;}getName() {return this.name;}
}
}

3. 运行环境

  • Java:需要 Java 虚拟机(JVM)来运行,Java 代码首先被编译成字节码(.class 文件),然后由 JVM 解释执行。可以在不同的操作系统上安装相应的 JVM 来运行 Java 程序,具有良好的跨平台性。
  • JavaScript:最初是在浏览器中运行,现代浏览器都内置了 JavaScript 引擎(如 Chrome 的 V8 引擎)来解释执行 JavaScript 代码。此外,借助 Node.js,JavaScript 也可以在服务器端运行。

4. 应用场景

  • Java
    • 企业级应用开发:如电商系统、金融系统等,因为 Java 的稳定性和安全性较高。
    • 安卓应用开发:虽然现在有 Kotlin 等新语言,但 Java 仍然是安卓开发的重要语言之一。
    • 大数据处理:如 Hadoop、Spark 等大数据框架都支持 Java 开发。
  • JavaScript
    • 前端开发:是前端开发的核心语言,用于实现网页的交互效果、动态内容展示等。
    • 服务器端开发:使用 Node.js 可以构建高性能的服务器端应用,如实时聊天系统、API 服务器等。
    • 桌面应用开发:借助 Electron 等框架,可以使用 JavaScript 开发跨平台的桌面应用,如 VS Code。

5. 性能表现

  • Java:由于 Java 是编译型语言,代码在运行前会被编译成字节码,然后由 JVM 进行优化和执行,因此在处理大规模数据和复杂计算时性能较好。
  • JavaScript:是解释型语言,代码在运行时逐行解释执行,性能相对较低。不过现代 JavaScript 引擎(如 V8)进行了大量的优化,性能有了很大提升。

下面为我的课堂笔记:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head>
<body></body><script>    //js一般写在body后面 因为加载顺序问题 js语言代码和java语言代码类似//注释方式:// /* *///数值:number (包括浮点和整数),NAN(表示不是数字 not a number)//字符串引用 "" ''//布尔:true false//数组:1.定义var arr = [1,3.14,true,null,undefined];var arr1 = new Array(1,3.14,true,null,undefined);//      2.获取 数组下表超过了最大值输出为undefinedconsole.log(arr[2]);//      3.存储类型//      4.长度可变arr[5]=666;  //修改arr.join;//流程控制:for/if/switch/while和java一致// for(var index = 10;index < 200; index++){//     document.write("<hr  width = "+index+">")// }//方法:1.定义 var 方法名 = function(形参){}//                 方法名 function(形参){}//      2.形参不需要定义类型//      3.不需要定义返回值类型//      4.使用,参数列表不惜要一致// var f1 = function(param1,param2){//     var c = param1 + param2;//     return c;// }// var result =  f1(5,6);// alert("方法"+result);//面向对象: var obj = {};obj.name = "张三";obj.photo = "../VS files/29d8fac3-3d85-471b-8764-b8f0ac78283d.png";obj.weight = 20;obj.action = function(){alert("这是个方法");}var stus = "[{name:'张三',age:25},{name:'李四',age:30}]";var s = JSON.parse(stus);   //用JSON.来转换回浏览器console.log(s);// var(表示通用数据类型) let(局部变量) const(常量)// var a = 3;// var b = 3.14;// var c = null;// var d = "hello world";// var e = true;// alert("a="+a); //弹出框 缺点:阻塞代码运行// console.log("b="+b);// var t1 = 1/3;// var t2 = 1 - 2/3;// alert(t1 === t2);//两个等号判断值,三个等号判断位置 值为不相等,分数转换为数字会丢失产生误差;</script>
</html>

alert()弹出框:

缺点:阻塞代码运行

console.log()控制台输出:

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词