当前位置: 首页 > news >正文

JavaScript 与 Java 学习笔记

一、JavaScript 简介

1. 定义

  • 浏览器脚本语言:主要用于实现网页交互功能(鼠标点击、键盘输入响应等)

  • 服务器端扩展:通过 Node.js 运行时环境可进行后端开发

2. 核心特点

  • 动态性:可实时修改 DOM 结构(增删改网页元素)

  • 弱类型:变量类型可动态改变

    let x = 10;      // 数字
    x = "hello";     // 变为字符串
  • 事件驱动:通过事件触发执行代码

    button.addEventListener("click", () => {alert("按钮点击!");
    });

3. 应用场景

场景说明
前端开发表单验证、动画效果、AJAX 数据加载
后端开发通过 Node.js 构建服务器应用(RESTful API、数据库操作等)

二、Java vs JavaScript 对比

1. 语言起源

特性JavaJavaScript
诞生时间1995 (Sun Microsystems)1995 (Netscape)
设计初衷嵌入式设备→通用编程语言网页交互功能
名称关系无直接关系(营销命名策略)

2. 语言类型

特性Java (静态类型)JavaScript (弱类型)
变量声明必须指定类型无需指定类型
类型检查编译时检查运行时动态确定
示例int age = 20;let age = 20; age = "20";

3. 运行环境

特性JavaJavaScript
执行方式编译为字节码→JVM 执行浏览器引擎直接解释执行
跨平台通过 JVM 实现浏览器/Node.js 环境
典型环境JRE/JDKChrome V8/Node.js

4. 主要用途

语言主要应用领域
Java企业级应用、Android 开发、金融系统、大型后端服务
JavaScript网页交互、SPA 开发、轻量级服务端(Node.js)、全栈开发

5. 语法对比

Java 示例(面向对象):

public class Person {private String name;public Person(String name) {this.name = name;}public void greet() {System.out.println("Hello, " + name);}
}

JavaScript 示例(原型链):

function Person(name) {this.name = name;
}Person.prototype.greet = function() {console.log("Hello, " + this.name);
};

6. 性能差异

指标JavaJavaScript
执行方式预编译+JIT 优化解释执行+现代引擎优化
典型场景高并发/计算密集型I/O 密集型/轻量级任务
优势稳定高效快速开发迭代

三、关键总结表

对比维度JavaJavaScript
类型系统静态类型弱类型
运行方式编译型解释型
平台依赖JVM浏览器引擎/Node.js
典型应用后端/移动应用网页交互/全栈开发
学习曲线较陡峭(OOP 体系)较平缓(灵活语法)

四、学习心得

  1. 不要被名称迷惑:虽然名称相似,但二者是完全不同的语言

  2. 类型系统差异:Java 的强类型更安全,JavaScript 的弱类型更灵活

  3. 全栈可能性:JavaScript 通过 Node.js 可实现前后端统一语言开发

  4. 性能选择:计算密集型优选 Java,快速迭代场景适合 JavaScript

  5. 现代演进:TypeScript 为 JavaScript 添加了静态类型特性,模糊了两者界限

http://www.xdnf.cn/news/198487.html

相关文章:

  • day9 python 热力图与子图的绘制
  • MYSQL——时间字段映射Java类型
  • 庙算兵棋推演AI开发初探(7-神经网络训练与评估概述)
  • FTP-网络文件服务器
  • 使用 Vue3 + Webpack 和 Vue3 + Vite 实现微前端架构(基于 Qiankun)
  • iVX 图形化编程如何改写后端开发新范式
  • EXCEL中跨行匹配两组数据
  • 流域生态系统碳排放、碳循环模拟与评估技术应用
  • 【基础篇】static_config采集配置详解
  • Vue 3 中通过 createApp 创建的 app 实例的所有核心方法,包含完整示例、使用说明及对比表格
  • 深入解析 PyTorch 中的 torch.distributions模块与 Categorical分布
  • 2025吃鸡变声器软件推荐
  • 【Vue3 组合式 API 在大型项目中的实践:useOperatorData 封装与应用】
  • 如何开发动态贴纸功能?一体化美颜SDK的技术实现思路与实战方案
  • Java 入门宝典--注释、关键字、数据类型、变量常量、类型转换
  • 服务器部署,Nginx安装和配置
  • 思维链理解汇总
  • 美团社招一面
  • 2025天津二类医疗器械经营备案攻略
  • AI 边缘盒子:智能与效率的边缘先锋
  • 生成对抗网络(Generative Adversarial Nets,GAN)
  • 知识付费平台推荐及对比介绍
  • Nacos源码—1.Nacos服务注册发现分析一
  • Coding Practice,48天强训(26)
  • 空间计算:开启人机交互新纪元的下一代技术范式
  • 安卓主题换肤功能
  • 安卓基础(强制转换)
  • 社交电商和泛娱乐平台出海南美市场支付方式与策略
  • ASP.NET MVC​ 入门指南四
  • 【quantity】3 Unit 物理量计算库(quantity.rs)