首页 > 编程语言 >JavaScript是什么?

JavaScript是什么?

时间:2022-10-30 19:24:44浏览次数:70  
标签:浏览器 脚本语言 什么 JavaScript 引擎 ECMAScript Netscape

从头认识JavaScript


JavaScript简称‘JS’,是一款用来在网页中添加一些动态效果与交互功能的客户端语言,虽然如今看来这是前端工程师的必修课,但其实这在前后端还没有分离的年代,只是作为一种简单的技术实现网络交互操作,为什么要说是它是一个简单的技术呢?这还是要从JavaScriptDE的诞生说起。

一、JavaScript的诞生

JavaScript 最初被称为 LiveScript,由 Netscape(Netscape Communications Corporation,网景通信公司)公司的布兰登·艾奇(Brendan Eich)在 1995 年开发。在Netscape 与 Sun(一家互联网公司,全称为“Sun Microsystems”,现已被甲骨文公司收购)合作之后将其更名为了 JavaScript。虽然JavaScript的设计是借鉴了当时的Java。但更名原因之一肯定还是有蹭当时大热语言Java的嫌疑,但蹭热度的行为也是因为当时JavaScript诞生时,微软和 Nombas(一家名为 Nombas 的公司)也分别开发了 JScript 和 ScriptEase 两种脚本语言,与 JavaScript 形成了三足鼎立之势,也就是所谓的浏览器大战时期。各公司为了抢占浏览器的市场份额,手段也是层出不穷,甚至JavaScript的设计理念上都有考虑到让更多人使用这门语言时的简单性,这也是为什么JavaScript采用了原型的设计,这点之后再讲。

二、JavaScript的形成和发展

1997 年,在 ECMA(欧洲计算机制造商协会)的协调下,Netscape、Sun、微软、Borland(一家软件公司)组成了工作组,并以 JavaScript 为基础制定了 ECMA-262 标准ECMAScript)。第二年,ISO/IEC(国际标准化组织及国际电工委员会)也采用了 ECMAScript 作为标准(即 ISO/IEC-16262)。而ECMAScript(简称“ES”)是根据 ECMA-262 标准实现的通用脚本语言,ECMA-262 标准主要规定了这门语言的语法、类型、语句、关键字、保留字、操作符、对象等几个部分,目前 ECMAScript 的最新版是 ECMAScript6(简称“ES6”)。

至此完整的JavaScript是由下面这三部分组成:

  • 核心(ECMAScript):提供语言的语法和基本对象;
  • 文档对象模型(DOM):提供处理网页内容的方法和接口;
  • 浏览器对象模型(BOM):提供与浏览器进行交互的方法和接口

三、JavaScript的如今

现如今我们所能看到页面都是通过JavaScriptHTMLCSS 共同构成。我们可以通过来创建一个html文件来通过HTML 的标签创建网页的DOM结构,也可以通过JS实现动态控制DOMCSS来实现更好的用户体验和网页交互。

作为一种脚本语言,JavaScript 代码不能独立运行,通常情况下我们需要借助浏览器来运行 JavaScript 代码,但好在如今的 Web 浏览器都支持 JavaScript。除了可以在浏览器中执行外,也可以在服务端或者搭载了 JavaScript引擎的设备中执行 JavaScript 代码。

常见的 JavaScript 引擎有:

  • V8:Chrome 和 Opera 中的 JavaScript 引擎;
  • SpiderMonkey:Firefox 中的 JavaScript 引擎;
  • Chakra:IE 中的 JavaScript 引擎;
  • ChakraCore:Microsoft Edge 中的 JavaScript 引擎;
  • SquirrelFish:Safari 中的 JavaScript 引擎。

三、JavaScript的特点

1) 解释型脚本语言——JavaScript 是一种解释型脚本语言,与 CC++等语言需要先编译再运行不同,使用 JavaScript 编写的代码不需要编译,可以直接运行。

2) 面向对象——JavaScript 是一种面向对象语言,使用 JavaScript 不仅可以创建对象,也能操作使用已有的对象。

3) 弱类型——JavaScript 是一种弱类型的编程语言,对使用的数据类型没有严格的要求,例如您可以将一个变量初始化为任意类型,也可以随时改变这个变量的类型。

4) 动态性——JavaScript 是一种采用事件驱动的脚本语言,它不需要借助 Web 服务器就可以对用户的输入做出响应,例如我们在访问一个网页时,通过鼠标在网页中进行点击或滚动窗口时,通过 JavaScript 可以直接对这些事件做出响应。

5) 跨平台——JavaScript 不依赖操作系统,在浏览器中就可以运行。因此一个 JavaScript 脚本在编写完成后可以在任意系统上运行,只需要系统上的浏览器支持 JavaScript 即可。

标签:浏览器,脚本语言,什么,JavaScript,引擎,ECMAScript,Netscape
From: https://www.cnblogs.com/yrys/p/16841956.html

相关文章

  • 既然CPU有缓存一致性协议(MESI),为什么JMM还需要volatile关键字?
    ​​既然CPU有缓存一致性协议(MESI),为什么JMM还需要volatile关键字?​​​​MESI缓存一致性协议在哪里以及如何实现?​​​​Intel®64andIA-32ArchitecturesDeveloper’s......
  • CPU 的工作原理是什么?
    ​​CPU的工作原理是什么?​​​​你管这破玩意叫CPU?​​​​你管这破玩意叫编程语言?​​......
  • 为什么说 90% 的前端不会调试 Ant Design 源码?
    写react项目的小伙伴应该都用过antd组件库,但绝大多数同学并没有看过它的源码。而想深入掌握antd组件库,只熟悉参数是不行的,必须要深入到源码层面。所以今天就来分享下......
  • JavaScript--Express框架重构项目逻辑
     1.Express框架介绍 *Express是高度包容、快速而极简的Node.js-Web框架   中间件  上手简单,学习门槛低具有丰富的基础API支持强大的路由功能灵活的......
  • JavaScript 使用 Notification 发送系统通知
    使用Notification可以在系统级别发送页面外部显示的桌面通知,即使浏览器在后台运行也可以向用户发出消息检查权限发送通知需要用户授权,通过只读属性Notification.per......
  • JavaScript学习
    (只用于自己学习,只是个目录形式,具体内容涉及不多)JavaScript用于用户和网页之间的交互,比如提交的时候,用于用户名是否为空的判断 1.document是JavaScript的内置对象,代表浏......
  • 数据结构 玩转数据结构 6-1 为什么要研究树结构
    0课程地址https://coding.imooc.com/lesson/207.html#mid=13454 1重点关注1.1为什么研究树结构高效    2课程内容3......
  • [笔记] 为什么会拖延?
    是什么?拖延其实是人们在面对较大压力时,自动发生的一种自我保护反应。而对自己太苛刻可能会把额外的坏情绪叠加到工作任务上,会让威胁的强度更强。 为什么?为什么必须要......
  • JavaScript – Web Worker
    前言在上一篇<<单线程与执行机制>> 中,我们提到了WebWorker.它的诞生是为了解决JS主线程执行耗时计算时,导致UI无法及时更新的卡死现象.它的解决思路是把......
  • javaScript简介和javaScript发展史
    *概念:一门客户端脚本语言*运行在客户端浏览器中的。每一个浏览器都有JavaScript的解析引擎*脚本语言:不需要编译,直接就可以被浏览器解析执行了*功能:*......