1990 提姆 伯纳斯 李 在欧洲核子物理实验室工作时建议建立一个以超文本系统为基础的项目来使得科学家之间能够分享和更新他们的研究结果 意义:允许别人浏览他人编写的网站
1993 美国伊利诺大学NCSA组织(马克 安德森)开发 MOSIAC浏览器,可以显示图片 真正意义上的图形化浏览器。
1994 马克 安德森 和 吉姆 克拉克(硅图SGI) MOSIAC communication corporation公司 名字侵权 改名为 Netscape 网景公司 -> 开发浏览器 netscape navigator
1996 微软收购spy glass 开发 IE internet exploror 1.0 发布IE3 使用JScript,让网页动态化
1996网景公司 Brendan eich 在NECTSACPE NAVIGATOR 开发 livescript
1996 JAVA火起来了,网景livescript不温不火,和SUN联系合作推广livescript -> JavaScript
2001 IE6 xp诞生,出现js引擎
2008 mozilla 公司 firefox 源自 newspace navagator
2008 google 基于 webkit BLINK GEARS prohressive web app chorme浏览器 V8引擎(1、直接翻译机器码 2、独立于浏览器运行)
2009 甲骨文oracle 收购SUN公司,JS的所有权属于oracle
European Computer Manufactures Association 欧洲计算机制造联合会。主要负责 评估、开发、认可电信、计算机标准。
ECMA -262 是脚本语言的规范 ,ECMAScript,能够查找JasvScript的相关规范。
编程语言 可以分为两个类别编译型
源码 ->编译器 -> 机器语言 -> 可执行的文件 通过编译器将源码转换为机器语言,保存在可以执行的文件当中。解释型
源码 -> 解释器 -> 解释一行就执行一行不需要根据不同的系统平台进行移植。 解释型语言是通过解释器一行一行的执行代码。JavaScript由三个部分组成
ECMAScript 语法、变量、关键字 保留字 值 原始类型,引用数据类型 对象 基础 函数DOM document object model W3C指定标准BOM browser object model 没有规范JS 引擎
如何通过单线程 模拟多线程
轮转时间片 短时间内轮流执行多个任务片段
任务1 任务2切分任务1 任务2随机排列这些任务片段、组成队列按照这个队列顺序将任务片段送进JS进程JS线程在指定的时间片段内执行一个任务片段,等待时间片段结束,执行下一个任务片段,这样直到任务全部完成。var a; 声明一个变量a,
a=3; 变量赋值
var a = 3; 变量声明并赋值 两个部分组成,声明 和 赋值 。 = 赋值操作
重复赋值
var a = 1;
a = 2 ;
命名规范
不能以数字开头,以字母_$开头。变量名可以包含字母_$数字。关键字 保留字不能作为变量名语义化 结构化 命名要有意义 J_header(通过js调用)小驼峰命名 JS的值 JavaScript中分为原始值和引用值 原始值 - 原始值 也叫基本类型,包括: Number String Boolean undefined null var a = 1; var a = 3.14; var str = '我爱编程'; //单引号 双引号之间都是字符串 //JavaScript 根据值来判断数据类型 //动态语言 -> 脚本语言 -> 解释型语言-> 弱类型语言 //静态语言 -> 编译型语言 -> 强类型语言 //布尔值 true false // undefined 未被定义的,空值 //null 常作为初始化组件,函数,销毁函数,占位的值 var a = null;引用值 引用值主要有一下几种 object array function date RegExp
原始值 先进后出 栈内存 数据永久保存,不可更改。
引用值,地址存在栈内存。