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是从慕课网开始的,基础篇学完.懵了一逼,可能是自己太蠢.感觉跟没学差不多,属性,方法,对象,什么都不懂.有的方法知道起的是什么效果,但是原理什么的都不知道. 还好,基础篇学 ...
随机推荐
- screen,client,page三种确定鼠标坐标的区别和原生JS事件写法,区别于Jquery的$.on(x,y);和$.click()
screenX clientX pageX的区别 screenX:鼠标位置相对于用户屏幕水平偏移量,而screenY也就是垂直方向的,此时的参照点也就是原点是屏幕的左上角. clientX:跟scre ...
- Python 函数式编程和面向对象编程
函数式编程 函数:function.函数式:functional,一种编程范式.函数式编程是一种抽象计算机的编程模式.函数!= 函数式(如计算!=计算机) 如下是不同语言的抽象 层次不同 高阶函数 ...
- Django 项目搭建(ubuntu系统)
1 环境搭建 sudo apt-get install python3-pip 安装pip3 sudo pip3 install virtualenv 安装虚拟环境,这里展示virtualenv vi ...
- Mysql 上亿级数据导入Hive思路分享
前提条件: 数据库容量上亿级别,索引只有id,没有创建时间索引 达到目标: 把阿里云RDS Mysql表数据同步到hive中,按照mysql表数据的创建时间日期格式分区,每天一个分区方便查询 每天运行 ...
- 对于单页应用中如何监听 URL 变化的思考
周末开发了一个在 GitHub 中给 repo 增加自定义备注的 chrome 扩展. 开发这个扩展的原因是我在 GitHub 中所 star 的项目实在太多了(截止目前 671 个),有的项目过个几 ...
- shell与export命令
围绕以下几个问题来学习export命令: 1.什么是export命令? 2.为什么要用export命令? 3.怎么使用export命令? 1.什么是export命令? ♦ 用户登录到Linux系统后, ...
- FreemarkerJavaDemo【Android将表单数据生成Word文档的方案之一(基于freemarker2.3.28,只能java生成)】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个方案只能在java中运行,无法在Android项目中运行.所以此方案是:APP将表单数据发送给后台,后台通过freemarker ...
- Zabbix-server 3.4 安装详细和修改web界面中文出现的乱码(一)
1. 老套路先来个Zabbix简介: Zabbix是一个企业级的.开源的.分布式的监控套件: Zabbix可以监控网络和服务的监控状况. Zabbix利用灵活的告警机制,允许用户对事件发送Email. ...
- 中国.NET:各地微软技术俱乐部汇总(持续更新中...)
中国.NET:各地微软技术俱乐部汇总(持续更新中...) 本文是转载文,源地址: https://www.cnblogs.com/panchun/p/JLBList.html by 史记微软. ...
- JPushDemo【极光推送集成,基于v3.1.8版本】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个Demo只是记录极光推送的集成,不能运行. 使用步骤 一.项目组织结构图 注意事项: 1. 导入类文件后需要change包名以 ...