JavaScript第一回-来龙去脉
简写:JavaScript-JS ECMAScript-ES
写在前面的话:啃文字大多时间不是件愉快的事情,但是我们必须过这个坎,让自己习惯,让自己不讨厌,至于喜欢不喜欢,我们等时间给出答案。
JavaScript由来JavaScript 诞生于1995年,由Netscape Navigator(网景公司,下文统一简称网景)公司设计的语言,目的是用来解决当时的表单输入验证问题(当时是放在服务器端进行的表单验证)。当时微软在IE3上也实现了JavaScript,但是为了避开网景的授权问题,因而在叫法上称为JScript。JavaScript前身其实是叫LiveScript,后来网景浏览器在发布第二版的时候,为了趁当时Java的热度,临时改成了JavaScript。这也让很多不了解JavaScript的人总是误会成Java的亲戚,然而实际上并无关系。再后来,因为微软跟网景公司各自用自己版本的JavaScript,并无一套标准的规则可供参考,所以,在1997年,以JavaScript1.1为蓝本的建议提交给了欧洲计算机制造商协会(ECMA,European Computer Manufacture Association)。该协会指定39号技术委员会负责这次标准化任务,经过几个月,最后完成了ECMA-262,也就是名为ECMAScript的新脚本语言。第二年,ISO/IEC(国际标准化组织和国际电工委员会)。
JS跟ES,大多时候我们是混着叫的,我们也可以不深究,但是既然入了这个门,不管是出于情怀还是更好的理解这门语言,个人觉得很有必要了解的。JS是一门基于浏览器的脚本语言,而ES是欧洲计算机制造协会牵头完成的一种脚本语言的标准。JS是基于ES标准开发出来的一种脚本语言,像node也是基于ES标准开发的一种后台语言。
浏览器的JS语言的实现包括了三个部分:
1. ES,这是JS的核心,是JS必须遵循的国际标准;
2. 文档对象模型,也就是DOM,主要用于操作html的元素节点;
3. 浏览器对象模型,也就是BOM,主要是各个浏览器实现的对象。
ES
ES跟浏览器没有任何的依赖关系,它定义的只是想过脚本语言的基础部分。ES规定这门语言由七部分组成
语法、类型、语句、操作符、关键字、保留字、对象。
这些特性跟java语言以及其他语言类似。
ES的版本更迭:
第一版,主要依据JS1.1编写。
第二版,只做编辑加工,并未实现新特性。
第三版,增加了像正则、异常处理等一些新的特性。第三版的发布标志着ES成为一门真正的编程语言,后续十几年主要兼容的就是这个版本。
第四版,改动巨多,废弃,采用3.1版本替代4.0直接发不成第五版,也就是传说中的ES5。
DOM
为什么要使用DOM?为了能动态改变页面显示。依据的标准是W3C制定的标准,具体的API以及实现后面再详述。
BOM
浏览器对象模型,包括窗口、浏览器信息、location、screen、cookie、XMLHttpRequst等,不过没有标准遵循。
因为JS的运行载体各异,工作学习过程中难免会遇到各种各样的兼容性问题,好在大多数的兼容性问题就算是百度也能解决绝大部分。
JavaScript第一回-来龙去脉的更多相关文章
- Jquery真的不难~第一回 编程基础知识
Jquery真的不难~第一回 编程基础知识 回到目录 前言 说Jquery之前,先来学习一下Javascript(以后简称为JS)语言中的基础知识问题,其时对于每种编程语言来说基础知识都是大同小异 ...
- 想写个小说,关于C#的,名字就叫《原Csharp》吧 (第一回 买书未成炁自生 惶惶回屋遇老翁)
以前也有写过一些小说,但是总是写写停停的,因为忙于项目和其他事情,总是耽搁很久(真的是很久)才会继续动两笔,所以我想先在这里以随笔的方式写个关于C#异世界的小故事吧,更新随缘,也稍微能让自己轻松些. ...
- Volley使用指南第一回(来自developer.android)
最近闲来想看看android网络方面的东西.google在2013年发布了一个叫做Volley的网络请求框架,我看了一下官网,居然在training里面就有教程.首先,英文的东西看着 还是挺不爽的,特 ...
- javascript判断回文数
"回文"是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如"我为人人,人人为我"等.在数学中也有这样一类数字有这样的特征,成为回文数(pa ...
- JavaScript第一部分
一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司 ...
- 前端之JavaScript第一天学习(1)-JavaScript 简介
javaScript 是世界上最流行的编程语言. 这门语言可用于 HTML 和 web,更可广泛用于服务器.PC.笔记本电脑.平板电脑和智能手机等设备. JavaScript 是脚本语言 JavaSc ...
- javascript第一课练习
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8& ...
- 第一回:Scrapy的试水
前言:今天算是见到Scrapy的第二天,之前只是偶尔查了查,对于这个框架的各种解释,我-----都-----看------不------懂----,没办法,见面就是刚. 目的:如题,试水 目标:< ...
- JavaScript第一阶段学习心得
开始接触JavaScript是从慕课网开始的,基础篇学完.懵了一逼,可能是自己太蠢.感觉跟没学差不多,属性,方法,对象,什么都不懂.有的方法知道起的是什么效果,但是原理什么的都不知道. 还好,基础篇学 ...
随机推荐
- java基础之抽象类与接口的形式参数和返回值
抽象类与接口形式参数和返回值问题 1.形参问题 /* 1.形式参数: 基本类型(太简单,不是我今天要讲解的) 引用类型 (1)类名:(匿名对象的时候其实我们已经讲过了) 需要的是该类的对象 (2)抽象 ...
- Spider与OpenPyXL的结合
OpenPyXL的API文档 1.OpenPyXL基础操作 引入Workbook这个类,然后调用 from openpyxl import Workbook wb = Workbook() 通过ope ...
- if_else_while_for
import getpass #标准库里要加密密码需要导包getpass.但是getpass在pycharm中不好用,需要在命令窗口中输入才管用. _username = "abc" ...
- TestNG失败自动截图
转自:https://www.cnblogs.com/tobecrazy/p/4814813.html
- MFC中listbox控件中各种属性的详解
ListBox控件是Windows 窗体的一个空间,ListBox 控件显示一个项列表,用户可从中选择一项或多项. 如果项总数超出可以显示的项数,则自动向 ListBox 控件添加滚动条. ...
- 【k短路&A*算法】BZOJ1975: [Sdoi2010]魔法猪学院
Description 找出1~k短路的长度. Solution k短路的求解要用到A*算法 A*算法的启发式函数f(n)=g(n)+h(n) g(n)是状态空间中搜索到n所花的实际代价 h(n) ...
- laravel 中的rbac自己简单的实现
用户表 CREATE TABLE `sys_user` ( `id` varchar(64) COLLATE utf8_bin NOT NULL COMMENT '用户编号', `ids` int(1 ...
- Heartbeat实现集群高可用热备
公司最近需要针对服务器实现热可用热备,这几天也一直在琢磨这个方面的东西,今天做了一些Heartbeat方面的工作,在此记录下来,给需要的人以参考. Heartbeat 项目是 Linux-HA 工程的 ...
- ruby整理
参考博客:https://www.cnblogs.com/felixzh/p/8081622.html 官网地址 https://rvm.io/rvm/install 一.前提 centos6.8下 ...
- Scala 隐式转换及应用
什么是隐式转换 我们经常引入第三方库,但当我们想要扩展新功能的时候通常是很不方便的,因为我们不能直接修改其代码.scala提供了隐式转换机制和隐式参数帮我们解决诸如这样的问题. Scala中的隐式转换 ...