少侠:喂,有人吗?赶紧出来接客了,有没有人啊

帅气的我:来了来了,少侠有何吩咐?

少侠:把你们店里的秘籍呈上来我要学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起源的更多相关文章

  1. 少侠学代码系列(二)->JS实现

    少侠:小子,休息好了没,赶紧的 帅气的我:好了好了,嚷什么 少侠:(拔刀)嗯? 帅气的我:少侠,淡定淡定,我们来看秘籍吧,刚刚我们说了JS实现是由三个部分组成的 核心(ECMAScript),文档对象 ...

  2. 从零开始学 Web 系列教程

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新…… github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:http:/ ...

  3. 从零开始学 Web 之 Vue.js(六)Vue的组件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  4. 从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  5. 从零开始学 Web 之 Vue.js(一)Vue.js概述,基本结构,指令,事件修饰符,样式

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  6. 从零开始学 Web 之 Vue.js(二)过滤器,按键修饰符,自定义指令

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  7. .net基础学java系列(四)Console实操

    上一篇文章 .net基础学java系列(三)徘徊反思 本章节没啥营养,请绕路! 看视频,不实操,对于上了年龄的人来说,是记不住的!我已经看了几遍IDEA的教学视频: https://edu.51cto ...

  8. .net基础学java系列(三)徘徊反思

    .net基础学java系列(三)徘徊反思 上一篇文章:.net基础学java系列(二)IDE 之 插件 这两天晚上看完了IDEA的教学视频:https://edu.51cto.com/course/1 ...

  9. .net基础学java系列(二)IDE 之 插件

    上一篇文章.net基础学java系列(二)IDE "扎实的基础"+"宽广的视野",基本可以帮我们摆脱码畜.码奴.码农的命运! IT领袖:IT大哥:IT精英:IT ...

随机推荐

  1. Roslyn还出现这么低级的错误,不应该呀!

    前几天对Dora.Interception作了简单的重构,想提供C#脚本来定义Interception Policy,毫无疑问微软提供的编译平台Roslyn使C#脚本化提供了支持.但是没有想到随便尝试 ...

  2. NumPy库实现矩阵计算

    随着机器学习技术越来越向着整个社会进行推广,因此学好线性代数和Python当中的numpy库就相当重要了.我们应该知道numpy库的使用是sklearn库和opencv库的基础.主要用于矩阵的计算.当 ...

  3. Tomcat线程池配置

    简介  线程池作为提高程序处理数据能力的一种方案,应用非常广泛.大量的服务器都或多或少的使用到了线程池技术,不管是用Java还是C++实现,线程池都有如下的特点:线程池一般有三个重要参数: 最大线程数 ...

  4. Android 实现卡片翻转的动画(翻牌动画)

    Android 实现卡片翻转的动画(翻牌动画) 需求描述 点击卡片,卡片翻转过来显示内容. 点击左边的卡片,将卡片翻转显示右边的图片结果. 功能实现 因为要翻转所以使用动画来完成翻转的动画.动画分为两 ...

  5. [Swift]LeetCode744. 寻找比目标字母大的最小字母 | Find Smallest Letter Greater Than Target

    Given a list of sorted characters letterscontaining only lowercase letters, and given a target lette ...

  6. Python档案袋( Json、pickle、加密与解密)

    Json是各程序通用的数据格式:pickle是Python特有的,可以存储很多Python特有的数据,如函数地址等 Json的简单使用: import json jsondata={ "us ...

  7. 用了 HTTPS 还不安全,问题就出在低版本 TLS 上

    HTTPS 加密时代已经来临,近两年,Google.Baidu.Facebook 等互联网巨头,不谋而合地开始大力推行 HTTPS, 2018 年 7 月 25 日,Chrome 68 上线,所有 H ...

  8. python中的None

    python中的None python中的None就相较于Java中的Null.python中就没有所谓的NULL.网络上很多的时候说的"python的Null"这个说法本身就是不 ...

  9. Python3练习

    Hello Python3 print("Hello Python!") #print("Hello, Python!"); '''a=1 b=2 c=a+b ...

  10. ASP.NET Core Mvc中空返回值的处理方式

    原文地址:https://www.strathweb.com/2018/10/convert-null-valued-results-to-404-in-asp-net-core-mvc/ 作者: F ...