少侠学代码系列(一)->JS起源
少侠:喂,有人吗?赶紧出来接客了,有没有人啊
帅气的我:来了来了,少侠有何吩咐?
少侠:把你们店里的秘籍呈上来我要学JS
帅气的我:少侠,别这样,我们秘籍是不外传的,祖上传下来的规矩,传人妖不传男女。
少侠:(胯下掏出刀)你看看这个再决定传不传
帅气的我:少侠你要这样的话,那我可要去把秘籍取过来给你了
少侠:赶紧,少说废话
(。。。一刻钟之后)
帅气的我:少侠,来了来了,刚出炉的秘籍你看如何
少侠:(一把夺过,凝神看了一刻钟之后)有点高深啊,喂,你!别跑,以后就由你来给我解读秘籍
帅气的我:(慢慢收回了即将要跨出店门的脚)少侠,别这样啊,我不卖身的
少侠:(拔刀)卖吗?
帅气的我:卖卖卖,以后我就是你的人了,少侠,你让我打狗我绝对不吃鸡,你让我玩荣耀我绝对不打撸啊撸
少侠:谁要你的人,赶紧滚过来,今天先给我说说这个秘籍第一部分,耽误练神功看我不削死你
帅气的我:来了来了,那少侠你听我慢慢道来,这第一招,JS起源:
JS诞生于1995年,主要目的是处理以前有服务器语言(如Perl)负责的一些输入验证操作,在JS问世之前,必须把表单数据发送到服务器端才能确定用户是否填写了某个必填域,是否输入了无效的值,有了JS之后这种验证操作方便了很多很多。
在当时用服务端来验证输入操作的时候,走在技术最前端的Netscape公司,决定着手开发一种客户端语言,当时就职于该公司的布兰登.艾奇开发了名为LiveScript的脚本语言---该语言将同时在浏览器和服务器中使用(服务器端的名字叫LiveWire),为了赶在发布日期前完成LiveScript的开发,Netscape和Sun公司进行联手,在发布前夕,为了搭上当时媒体热炒JAVA的顺风车,改名为javaScript,实际上两者类似雷峰塔和雷锋的关系。
后来javaScript取得了重大成功,但是微软决定在Internet Explorer上和Netscape竞争竞争,所以加入了名为JSscript的javaScript实现。在当时业界还没有标准规定JavaScript的语法和特性,两个版本并存引发了业界的担心,谁也不想一样的功能得写两遍不同的代码吧,所以在1997年,以javaScript1.1为蓝本的建议被提交给了欧洲计算机制造商协会(ECMA),
该协会指定第39号委员会(TC39)负责指定统一的规范,他们经过数月完成了ECMA-262---定义一种名为ECMAScript的新脚本语言的标准。1998年,ISO/IEC(国际标准化组织和国际电工委员会)也采用了ECMAScript作为标准,自此,浏览器开发商就开始致力于将ECMAScript作为各自JavaScript实现的基础。
虽然javaScript和ECMAScript通常被人们用来表达相同的含义,但JavaScript的含义却比ECMA-262规定的多的多,一个完整的JavaScript实现应该由一下三部分组成
核心(ECMAScript) 文档对象模型(DOM) 浏览器对象模型(BOM)
少侠,这就是第一招,你看我能歇会在继续给你讲吗?
少侠:好吧,看你表现还不错,歇会吧!
少侠学代码系列(一)->JS起源的更多相关文章
- 少侠学代码系列(二)->JS实现
少侠:小子,休息好了没,赶紧的 帅气的我:好了好了,嚷什么 少侠:(拔刀)嗯? 帅气的我:少侠,淡定淡定,我们来看秘籍吧,刚刚我们说了JS实现是由三个部分组成的 核心(ECMAScript),文档对象 ...
- 从零开始学 Web 系列教程
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新…… github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:http:/ ...
- 从零开始学 Web 之 Vue.js(六)Vue的组件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 Vue.js(一)Vue.js概述,基本结构,指令,事件修饰符,样式
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 Vue.js(二)过滤器,按键修饰符,自定义指令
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- .net基础学java系列(四)Console实操
上一篇文章 .net基础学java系列(三)徘徊反思 本章节没啥营养,请绕路! 看视频,不实操,对于上了年龄的人来说,是记不住的!我已经看了几遍IDEA的教学视频: https://edu.51cto ...
- .net基础学java系列(三)徘徊反思
.net基础学java系列(三)徘徊反思 上一篇文章:.net基础学java系列(二)IDE 之 插件 这两天晚上看完了IDEA的教学视频:https://edu.51cto.com/course/1 ...
- .net基础学java系列(二)IDE 之 插件
上一篇文章.net基础学java系列(二)IDE "扎实的基础"+"宽广的视野",基本可以帮我们摆脱码畜.码奴.码农的命运! IT领袖:IT大哥:IT精英:IT ...
随机推荐
- android 2018 面试题
四大组件:activity.service.content provider.broadcast receiver [一]Activity 1.生命周期 onCreate:表示activity正在被创 ...
- DCOS实践分享(6):基于DCOS的大数据应用分享
Open DC/OS大中华区官方发布会在京隆重召开 DCOS领域诞生了一个100%开源的企业级Datacenter Operating System版本,即DC/OS.Linker Network ...
- Spark MLlib
MLlib 数据挖掘与机器学习 数据挖掘体系 数据挖掘:也就是data mining,是一个很宽泛的概念,也是一个新兴学科,旨在如何从海量数据中挖掘出有用的信息来. ...
- Python -- socket 实现服务器之间的通信
现在需要做一个分布式课程设计(简单小游戏),三个人小组合作完成. 我需要设计一个登录注册服务器,接收来自网关服务器(消息中间件)的用户登录注册消息请求,然后生成访问数据库服务器的消息,发送给数据库服务 ...
- 机器学习 GBDT+xgboost 决策树提升
目录 xgboost CART(Classify and Regression Tree) GBDT(Gradient Boosting Desicion Tree) GB思想(Gradient Bo ...
- 10.Flask上下文
1.1.local线程隔离对象 不用local对象的情况 from threading import Thread request = ' class MyThread(Thread): def ru ...
- Android--MediaRecorder录音录像
前言 Android除了支持播放多媒体文件之外,还可以从对应的硬件中捕获多媒体,比如从麦克风录音.从摄像头录像等.本篇博客讲解一下Android下如何通过MediaRecorder进行录音以及录像的步 ...
- Python进阶:迭代器与迭代器切片
2018-12-31 更新声明:切片系列文章本是分三篇写成,现已合并成一篇.合并后,修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔接做了大量改动.原系列的单篇就不删除了,毕竟也是 ...
- MySQL执行原理,逻辑分层、更改数据库处理引擎
MySQL执行原理,逻辑分层.更改数据库处理引擎 作者:Stanley 罗昊 [转载请注明出处和署名,谢谢!] 用了那么长时间的MySQL,sql语句相信早已烂熟于心,于是,我就试着去了解它的执行原理 ...
- Android总结篇系列:Activity中几个主要函数详解
Activity作为Android系统中四大基本组件之一,包含大量的与其他的各大组件.intent.widget以及系统各项服务等之间的交互的函数.在此,本文主要选取实际项目开发中常用的,但完全理解又 ...