五大主流浏览器 内核

IE trident

Safari webkit

chrome webkit bink

firefox gecko

Oprah presto

浏览器的历史 和 JS诞生

1、1990年 蒂姆 伯纳斯 李 写了一个world wide web 然后移植到C --> libwww(真正意义上的浏览器)/nexus 允许别人浏览他人编写的网站

2、1993年 美国伊利诺大学 NCSA组织(马克 安德森)开发了 MOSIAC浏览器,可以显示图片,真正意义上的图形化浏览器

3、1994年 马克 安德森 和 吉姆 克拉克 成立了 MOSIAC communication corporation公司

插曲 : MOSIAC商标 属于 伊利诺大学 卖给了 spy glass公司

MOSIAC communication corporation 改名为 Netscape communication corporation

网景公司 开发的 netscape navigator 流行到2003年

4、1996年 微软收购 spy glass 开发了 Internet Explorer 1.0

IE3 诞生了第一个脚本 JScript

网景公司 的 Brendan eich 在netscape navigator 开发出了 livescript (JavaScript的前身)

JAVA火起来了,网景公司与SUN公司(JAVA创始公司)合作推广产品,将 livescript 改名为JavaScript

5、2001年

IE6 和 XP诞生

JS引擎诞生

6、2003年

Mozilla公司 firefox -> 根据 netscape navigator 改的

7、2008年

Google 基于 WEBKIT BINK GEARS 开发出 chrome -> V8引擎(JS引擎) -> 直接翻译机器码 ; 独立于浏览器运行

(PROGRESSIVE WEB APP 渐进式WEB APP )

8、2009年

甲骨文(oracle)收购 SUN公司,JS的所有权给甲骨文

ECMA

全称:European Computer Manufactures Association 欧洲计算机制造联合会

做什么:评估、开发、认可电信和计算机标准

ECMA-262 脚本语言的规范 叫 ECMAScript

ES5 ES6 规范化脚本语言

编程语言

编译型:源码 -> 编译器 -> 机器语言 -> 可执行文件

优点:执行速度快

缺点:跨平台性不好

解释型:源码 -> 解释器 -> 解释一行就执行一行

优点:不需要根据不同的系统平台进行移植

缺点:执行速度稍慢

脚本语言

-> 脚本引擎 -> 解释器

注意:脚本语言前端(JavaScript 客户端脚本)、后端(php 服务端脚本)都有

前端脚本语言: JavaScript

jscript 微软 只支持IE

vbscript 微软

actionscript 用于adobe flash player

JavaScript

单线程 ->可模拟多线程

-轮转时间片(短时间内轮流执行多个任务的片段)

-1.任务1 任务2

-2.切分任务1 任务2

-3.随机排列这些任务片段,组成队列

-4.按照这个队列顺序将任务片段送进JS进程

-5.JS线程执行一个又一个的任务片段

内部 <script type="text/javascript">***</script> ​外部 <script src="./index.js"></script> ​同时使用时,外部生效 ​ ​javascript HTML CSS 的区别:HTML CSS不具有逻辑性,javascript为编程语言(四要素:变量,数据结构,函数,运算能力) ​ ​变量:是一个存储数据的容器,方便后续使用 ​var -> variable(变量) ​ var a;//变量声明(为变量分配一个存储空间,命名为a) ​ a = 3;//变量赋值 ​ var a = 3; //变量声明并赋值 ​ ​ var x = 1, ​ y = 2; ​ ​企业开发

命名规范:

不能以数字开头 ​ 能字母_$开头 ​ 关键字、保留字不能用 ​ 语意化,结构化 ​ 小驼峰 ​ ​优先级: 运算 > 赋值 ​

JS的值:

原始值 -> 基本类型 ​ Number String Boolean undefined null ​ ​ var a = 3.14; ​ var str = '我爱编程'; ​ var a = true; //计算机中非真即假,非假即真 ​ var a = undefined; ​ null(空值,初始化组件,函数,销毁函数,占位) ​

引用值 object array function date RegExp(正则)

栈内存和堆内存

原始值都在栈内存中,原始数据永久保存,不可改

例:

var a = 2//在栈中开辟一个空间命名为a,存放2 ​ a = 3//在栈中再开一个空间,命名为a,存放3,原来的空间名称恢复十六进制数,但是数据依然存在。

引用值将地址存在栈内存中,将值存在堆内存中

例:

var arr = [1,2,3];// ​ var arr2 = arr ; //arr与arr2指向同一堆内存的地址 ​ arr.push(5); ​ console,log(arr2);//[1,2,3,5] ​ var arr = [1,2];//此时在堆空间中新开辟一个堆空间存[1,2],在栈空间中另外开辟了一个空间保存新地址 ​ console.log(arr2)//[1,2,3,5] ​ console.log(arr)//[1,2]

动态语言 -> 脚本语言 -> 解释性语言 ->弱类型语言 ​ 静态语言 -> 编译型语言 -> 强类型语言

ECMAscript

语法、变量、关键字、保留字、值、原始类型、引用类型运算、对象、继承、函数

DOM document object model (W3C规范)

BOM browser object model (没有规范)

JavaScript笔记第一集相关推荐

  1. vba 执行网页javascript_JavaScript秘密笔记 第一集

    1. 什么是JavaScript 2. 如何使用JavaScript 3. *变量 4. *数据类型 谁记得笔记越多,谁学的越烂! 1. 什么是JavaScript: 前端三大语言: HTML: 专门 ...

  2. 跟我一起学jQuery——第一集

    <锋利的JQuery>第二版阅读笔记-第一章 跟我一起学jQuery--第一集 jQuery对象和DOM对象 jQuery的优势与特点 Hello World! jQuery对象和DOM对 ...

  3. 【JavaScript笔记 · 基础篇(五)】Array全家桶(引用数据类型中的数组 / Array对象 / Array.prototype)

    文章目录 一. 引用数据类型中的数组 1.1 概述 1.2 初始化 1.2.1 字面量 1.2.2 构造函数模式 1.3 访问 1.4 length属性 1.5 数组遍历 1.6 类数组对象 1.6. ...

  4. JavaScript笔记(狂神说)

    JavaScript笔记(狂神说) 本文章根据b站狂神说javascript视频教程整理 视频链接:https://www.bilibili.com/video/BV1JJ41177di?from=s ...

  5. JavaScript笔记(一)

    JavaScript笔记(一) 1 JavaScript简介 JavaScript,就是我们通常所说的JS,是一种嵌入到HTML页面中的脚本语言,由浏览器一边解释一边执行. 我们在"HTML ...

  6. Android群英传神兵利器读书笔记——第一章:程序员小窝——搭建高效的开发环境

    Android群英传神兵利器读书笔记--第一章:程序员小窝--搭建高效的开发环境 目录 1.1 搭建高效的开发环境之操作系统 1.2 搭建开发环境之高效配置 基本环境配置 基本开发工具 1.3 搭建程 ...

  7. jquery交换数组元素位置_跟我一起学jQuery——第一集

    <锋利的JQuery>第二版阅读笔记-第一章 jQuery对象和DOM对象 想学习jQuery,首先要学会区分jQuery对象和DOM对象.1)jQuery对象是用jQuery类库的选择器 ...

  8. Web前端JavaScript笔记(4)节点

    如何获取元素节点的属性: 在Web前端JavaScript笔记(3)对象中,介绍了访问行间属性的方法,除此之外,系统还提供了三个方法访问元素的属性: 1. setAttribute: 2. getAt ...

  9. 吴恩达机器学习笔记第一周

    第一周 吴恩达机器学习笔记第一周 一. 引言(Introduction) 1.1 欢迎 1.2 机器学习是什么? 1.3 监督学习 1.4 无监督学习 二.单变量线性回归(Linear Regress ...

最新文章

  1. 经验总结!我们是如何在编程面试中挂掉的
  2. MySQL千万级数据JDBC插入
  3. 如何自动完成登录 SAP BTP workflow(工作流) 管理应用 Launchpad 所需的设置
  4. 10个优秀的 Web UI 库/框架
  5. 《假如编程是魔法之零基础看得懂的Python入门教程 》——(七)我把魔法变成了积木
  6. 请编写一个程序,使用字典存储学生信息,学生信息包括学号和姓名,请根据学号从小到大的顺序输出学生的信息。
  7. python 打印皮卡丘_用python打印你的宠物小精灵吧
  8. ubuntu下定时执行工具cron开启关闭重启
  9. python显示等待和隐式等待_荐selenium内的隐式等待和显示等待的区别
  10. (40)Verilog HDL锁存器设计
  11. mybatis expected at least 1 bean which qualifies as autowire candidate for this dependency
  12. 加上mvc:resources后controller访问404
  13. [TACL18]隐式句法树模型真的能学到句子中有意义的结构吗?
  14. CRM----管理软件分析( ERP/CRM/OA)
  15. ENVI5.2裁剪遥感图像指定区域
  16. 计算机协会换届答辩ppt,国奖答辩PPT-精选版.ppt
  17. 单片机---HLK-W801图形框架LVGL下开发(六)
  18. HotSpot虚拟机的垃圾收集算法实现
  19. 什么是EDI报文标准?
  20. php实现对ppt的编辑,如何对PPT图示进行修改和编辑

热门文章

  1. Proxyhandler处理器
  2. python多继承方式和顺序
  3. HMI智能座舱自动化测试的技术应用
  4. 简明 Python3 教程 | 学习笔记
  5. 在 Zend Studio 12.5 里下断点调试运行 PHP 源代码
  6. python爬虫基础(9:验证识别之滑块验证)
  7. 转: 我的助理辞职了.
  8. 《海外社交媒体营销》一一1.2 更新的信息发布平台,更多的媒体度量手段
  9. JPA-常见的优化点
  10. teradata查看正在运行的进程_goldengate 进程在oracle数据库哪个视图