首页 > 其他分享 >JS简介

JS简介

时间:2023-01-12 21:33:37浏览次数:35  
标签:浏览器 对象 简介 JavaScript JS 发布 ECMAScript

JS历史

  • JavaScript 诞生于 1995 年。NetSpace发布Netspace Navigator2浏览器,提供了免费开发工具LiveScript,设计的主要目的是处理以前由服务器端语言负责的一些输入验证操作。在人们普遍使用电话拔号上网的年代,能够在客户端完成一些基本的验证任务绝对很不容易。因为Java流行,所以改名为JavaScript。这个就是JavaScript1.0版本。
  • 因为JavaScript很受欢迎,Netspace Navigator3浏览器发布了JavaScript1.1版本。不久IE3也加入的脚本编程的功能,为了避免纠纷,命名为JScript。
  • 1997年,ECMA以JavaScript1.1为基础制定了脚本语言标准:ECMA-262,并命名为ECMAScript。浏览器厂商使用ECMAScript作为各自的JavaScript实现的规范标准。

ECMAScript

  • 1997年,ECMA发布262号标准文件(ECMA-262)第一版,规定了脚本语言的实现标准,并将这种标准命名为ECMAScript,这个就是ES1.0版本。

  • ECMAScript是JavaScript语言的规范标准,JavaScript是ECMAScript的一种实现方式。在一些语境中是可以互换的。ECMAScript规定了语言的组成部分:语法、类型、语句、关键字、保留字、操作符、对象。

ECMAScript版本

  1. 1998年6月, ECMAScript2.0版发布
  2. 1990年12月, ECMAScript3.0版发布,并成为 JavaScript的通用标准,获得广泛支持
  3. 2007年10月, ECMAScript4.0版草案发布,对3.0版做了大幅升级。由于4.0版的目标过于激进各方对于是否通过这个标准产生了严重分歧,2008年7月,ECMA中止ECMAScript4.0的开发,将其中涉及现有功能改善的一小部分发布为ECMAScript3.1.不久, ECMAScript3.1改名为 ECMAScript5
  4. 2009年12月, ECMAScrip5.0版正式发布
  5. 2011年6月, ECMAScript 5.1版发布
  6. 2013年12月, ECMAScrip6版草案发布2015年6月, ECMAScript6发布正式版本,并更名为 ECMAScript2015。目前最新版本为 ECMAScript2019,于2019年7月正式发布

为什么学习JS

  • 所有主流浏览器都支持 JavaScript。

  • 目前,全世界大部分网页都使用 JavaScript。

  • 它可以让网页呈现各种动态效果。

  • 做为一个 Web 开发师,如果你想提供漂亮的网页、令用户满意的上网体验,JavaScript 是必不可少的工具

曾经有人说:

但是JS之父说:any application that can be written in JavaScript,will eventually be written in JavaScript

借用一下阮一峰老师的微博:

  • 使用场景
    • WEB 前端
      • 图形处理
      • PDF生成
      • 图形界面
      • 各种测试工具
      • 视频和音频播放和处理
      • 通信
      • 多人协作
    • 后端
      • Node
      • 开发框架Express/ThinkJS/Clouda
      • 博客系统:Ghost/hexo
      • 基于 Node 的前端自动化工具:Grunt/Gulp
    • Hybrid App
    • 游戏
      • 世界上最流行的 2D 游戏引擎之一 Cocos2d 和最流行的 3D 游戏引擎之一 Unity3D 均支持 JS 开发游戏。

JavaScript 概念

JavaScript是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,在HTML网页上使用,用来给HTML网页增加动态功能。

  • 直译式:它不需要经过编译器先行编译为机器码,之后直接在 CPU 中运行。直译式语言需要通过解释器,在运行期动态直译。
  • 脚本语言: JavaScript是在程序的运行过程中逐行进行解释,只在被调用时进行解释或编译。
  • 动态类型:变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型。
  • 弱类型:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值
  • 基于原型:只有对象,没有类;对象继承对象,而不是类继承类。“原型对象”是基于原型语言的核心概念。原型对象是新对象的模板,它将自身的属性共享给新对象。一个对象不但可以享有自己创建时和运行时定义的属性,而且可以享有原型对象的属性

JS构成

完整的JS由一下几个构成

  • ECMAScript:语言核心部分
  • 文档对象模型(DOM)网页文档操作标准,HTML应用程序编程接口(API),DOM把整个文档映射成一个树形节点结构,方便JS脚本快速访问和操作。
  • 浏览器对象模型(BOM) 客户端和浏览器窗口的操作基础,使用BOM可以对浏览器窗口进行访问和操作,如移动窗口,访问历史记录等等,没有规范,但是所有浏览器默认支持

标签:浏览器,对象,简介,JavaScript,JS,发布,ECMAScript
From: https://www.cnblogs.com/z-bky/p/17047965.html

相关文章

  • 《Vue.js 设计与实现》读书笔记(1-3章)
    第1章、权衡的艺术命令式or声明式命令式:关注过程声明式:关注结果声明式直接声明想要的结果,框架帮用户封装好命令式的代码,所以在封装的过程中要做一些其他的事情来(生......
  • axios 处理响应( 流文件或 json)
    今天遇到一前端问题。axios导出后台xls文件出现乱码。多会儿没写发现前端了,发现是【没指定响应类型时,axios默认把响应内容包成字符串,即type(res.data)='string'】,......
  • Kubernetes组件简介
    Kubernetes组件简介Kubernetes(简称k8s)致力于提供跨主机集群的自动部署、扩展、高可用以及运行应用程序容器的平台。k8s是什么一个基于容器技术的分布式架构一个一站式......
  • C# 中,对象转JSON以及对象转JSON字符串或者反向转换
    对象转JSON:1privatevoidbutton3_Click(objectsender,EventArgse)2{3SaleOrder_Save_Main.MainSM=newSaleOrder_Save_Main......
  • The State of JS 2022 All In One
    TheStateofJS2022AllInOneTheStateofJS2022:LibrariesVitesthttps://2022.stateofjs.com/en-US/libraries/(......
  • JS_3_数组
    JavaScript中的数组是自动扩容的。灵活地!  声明:1、vararr=newArray();2、vararr=newArray(length);3、vararr=[];赋值和取值:通过......
  • jquery.liMarquee.js-文字滚动效果
    jquery.liMarquee.js插件:jquery多风格多功能滚动特效代码插件说明:须引入3个文件jquery.js、liMarquee的js和css文件代码:<!DOCTYPEhtml><htmllang="en"><head>......
  • js 替换字符串
    一、替换单个字符,格式:源字符串.replace("原字符","替换成字符")//需要处理数据varfileId=vars.get("fileId")//目标格式,替换后想要转换成:{uri:file/userProfile......
  • 死锁简介
    哲学家就餐的问题。死锁:互相等待对方持有的资源而造成的谁的无法执行的情况叫做死锁。死锁处理:死锁预防死锁避免:判断一下该时间有没有一个进程处于安全序列死锁检测+......
  • 疑惑解决(2)—js使用与jQuery的src设置问题
    在单独js文件中引用Jquery之前提到过:使用js的方式  学了jquery  今天实际使用发现一个问题:如果我要使用script标签的方式引入js文件,而我又想在js中使用jQuery简......