【零基础学JS -1】Javascript是何方神圣?

👨‍💻 作者简介:程序员半夏 , 一名全栈程序员,擅长使用各种编程语言和框架,如JavaScript、React、Node.js、Java、Python、Django、MySQL等.专注于大前端与后端的硬核干货分享,同时是一个随缘更新的UP主. 你可以在各个平台找到我!
🏆 本文收录于专栏: 零基础学JavaScript,包含JavaScript 基础知识,DOM相关知识,高级知识点,最新ES特性
————————————————————————
🔥 热门专栏:

🥇 学透CSS: 全网阅读超百万,CSDN最强CSS专栏,精通CSS全属性,不做切图仔,从订阅本专栏开始!

🥇 SprinbBoot + Vue3 项目实战: 新鲜出炉的2023实战系列博客,配套视频,用心打磨,篇篇精品.持续更新,值得订阅!

什么是JavaScript

JavaScript是一种脚本语言,可以帮助网站变得生动起来。JavaScript是前端最受欢迎的编程语言之一,它帮助开发人员创建交互式、吸引人和用户友好的Web产品。HTML和CSS赋予网站其样式和结构,而JavaScript使网站可编程,将其转变为丰富的交互式应用程序。JavaScript语言现在被近98%的网页作为客户端编程语言使用。

JavaScript 简介

JavaScript 是一种动态编程语言,开发者可以使用它在网页上添加复杂的功能和内容,例如动画图形、交互式地图、滚动多媒体播放列表等。

开发者将 JavaScript 代码直接写入网页的 HTML 中,它会随着页面的加载自动运行。JavaScript 可以用于更改 HTML 内容、更改 HTML 属性值、更改 HTML 样式(CSS)以及隐藏或显示 HTML 元素。最简单的理解 JavaScript 的方式可能是想象一下没有它的互联网:页面将感觉静态和死气沉沉。

JavaScript 语法基于 C 编程语言,并支持基于对象原型(而不是类)的面向对象编程以及函数式编程。JavaScript 程序操作属于以下类型的值:

  • 数字
  • 大整数
  • 字符串
  • 布尔值
  • 函数
  • 对象
  • 符号

JavaScript历史

JavaScript的历史可以追溯到1995年,当时它是由Netscape程序员Brendan Eich发明的。最初被称为“Mocha”,然后在首次发布时更名为“LiveScript”,后来又被重新命名为JavaScript,这是一项不明智的决定,旨在利用Java编程语言的流行度,尽管这两种编程语言完全不同。

在Microsoft的Internet Explorer和Netscape的Navigator激烈竞争的浏览器战争期间,Web开发人员首次接触了JavaScript。在那种环境下,Microsoft于1996年设计了一种类似于JavaScript的东西,称为JScript,它成为客户端脚本的行业标准多年,因为Internet Explorer拥有巨大的市场份额。

JScript推出几个月后,Netscape向国际标准组织ECMA International提交了JavaScript,导致1997年出现了第一个ECMAScript标准版本。该标准在1999年升级为ECMAScript第3版。

由于对其复杂性存在分歧,第四版的许多部分被放弃,但它们成为了2009年ECMAScript第5版的基础,这是一个巨大的成功。它于2009年发布,到2013年,所有主要浏览器(包括Internet Explorer)都完全合规。

JavaScript的崛起与Netscape的继任者Mozilla于2004年推出Firefox浏览器、Google于2008年发布Chrome浏览器(以及Google发布的仍然是最强大的JavaScript引擎之一的V8)以及大型流行的JavaScript框架和库(如jQueryPrototype和Dojo Toolkit)的推出相吻合。

雄心勃勃的第六版标准名为ES6,代号为“Harmony”,于2015年发布。与ES5一样,它也是一个巨大的成功,到2017年春季,所有主要浏览器都完全合规。

Java和JavaScript的区别

尽管Java和JavaScript的名称相似,但两种编程语言在编写方式、需要的插件、应用和用途等方面有着显著的差异。如果你想知道Java和JavaScript之间的区别,以下是它们的相似之处和不同之处的详细介绍:

Java和JavaScript的相似之处

Java和JavaScript在以下一些主要领域具有相似之处:

  • 面向对象编程。对于这两种语言,Web开发人员需要了解面向对象编程以及如何根据上下文关系编写对象的代码。尽管在这里也有一个重要的区别:JavaScript不根据类型区分对象,而在Java中,对象被分为类和实例,所有继承都通过类层次结构进行。Java是一种面向对象的语言,而JavaScript是一种基于对象的脚本语言。
  • 浏览器兼容性。Java和JavaScript都可以在浏览器中运行。所有现代Web浏览器都支持JavaScript,而Java Applets也可以在浏览器中运行,尽管存在潜在的安全和兼容性问题,有些人宁愿避免使用。
  • 后端应用程序。这两种语言都有各种服务器端用途。特别是Java,它在后端开发中非常重要,支持像JBoss、Apache和WebSphere等技术。虽然JavaScript通常更多地用于编写客户端脚本和应用程序,但Node.js使JavaScript不仅可以在Web浏览器上运行,还可以在服务器上运行。

Java和JavaScript的不同之处

尽管它们有一些共同点,但Java和JavaScript之间有许多差异,包括:

  • 复杂性:由于Java的强类型检查和类继承要求紧密耦合的对象层次结构,使用Java编程比JavaScript更加复杂和不太用户友好。相比之下,JavaScript提供了更多的自由,编写JavaScript的开发人员不需要声明所有的类、变量和方法,JavaScript变量、函数返回类型和参数不需要显式地声明类型。
  • 运行平台。Java应用程序和程序在Java虚拟机中运行,而JavaScript Web应用程序在浏览器窗口中运行,无需进一步设置。Java程序是平台无关的,这意味着它们可以在任何安装了JVM的平台上运行,包括桌面、移动应用和嵌入式系统。
  • 编译。JavaScript是一种基于文本的编程语言,代码是用纯文本编写的,而Java代码必须被编译。
  • 对象。JavaScript对象是基于原型的,而Java对象是基于类的。

JavaScript的优缺点

JavaScript的优点和缺点包括其速度、直观性以及在积极方面的广泛流行,同时也存在安全性方面的担忧。

JavaScript的优点

速度

客户端JavaScript可以在浏览器中运行,因此通常非常快速。此外,主要浏览器支持JavaScript的即时编译(JIT),因此在运行代码之前不必对其进行编译。(具有内部JavaScript代码的网页将比必须引用外部代码的页面加载得更快。)

流行性

JavaScript在Web开发和游戏开发中非常普及。这意味着有大量的免费资源可供开发人员学习如何使用JavaScript。

互操作性

JavaScript与其他编程语言集成良好,可用于大量应用程序。

创建让用户满意的产品

JavaScript帮助开发人员通过交互式功能、动画、菜单等极大地改善了网站的用户体验。这些丰富的界面已成为现代互联网体验的标志。

学习直观

JavaScript可以是一种友好的语言,因为它具有简单、灵活的语法和易于编写和调试的代码。

JavaScript的缺点

尽管它们有一些共同点,但Java和JavaScript之间存在许多差异,包括:

安全性

JavaScript代码在客户端执行——换句话说,在用户的计算机上执行——这可能使其容易受到跨站脚本和其他类型的恶意代码注入攻击,而用户或站点所有者通常不会意识到。因此,一些人会禁用JavaScript。

必须在不同的浏览器上进行测试

不同的浏览器仍然可以以不同的方式解释JavaScript,因此对于编写JavaScript代码的开发人员来说,需要花费一些时间在所有主要浏览器中测试您的脚本,以确保所有功能按预期工作。尽管如此,JavaScript如此流行,以至于任何不兼容的浏览器都不会被广泛使用。

任何人都可以查看您的代码

JavaScript代码可以在浏览器中查看,因此任何可以访问您的站点的人都可以阅读并重用您的代码。

为什么可以在浏览器中运行

​ JavaScript 之所以可以在浏览器中运行,是因为浏览器中嵌入了JavaScript引擎。当然也可以在任意搭载JavaScript引擎的设备中执行。例如Nodejs在浏览器之外运行了V8引擎,这使得js可以在服务端运行。

​ JavaScript引擎总结:

  • Chrome 和 Opera 中的 JS引擎------V8引擎

  • Firefox中的JS引擎------SpiderMonkey引擎

  • Safari中的JS引擎------Nitro引擎和SquirrelFish引擎

  • IE中的JS引擎------Chakra引擎

  • Microsoft Edge中的JS引擎------ChakraCore引擎

Javascrpt可以做什么

  1. VR/AR

  2. 游戏

  3. 服务端

  4. 编写操作系统

  5. 移动端应用

  6. 桌面端应用

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YOLO大王

你的打赏,我的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值