网络日志

JavaScript

一.认识JavaScript

1.JavaScript简介
JS是一种高级的,解释型的编程语言,是一门基于原型,头等函数的语言,
是一门多范式的语言,它支持面向对象程序设计,指令式编程以及函数式编程
2.JavaScript的起源
1994年,网景公司(Netscape)发布了Navigaor浏览器0.9版
这是历史上第一个比较成熟的网络浏览器,在当时轰动一时
但是这个版本的浏览器只能用于浏览,不具备与访问者互动的能力,所以网景公司急需要一种网页脚本语言,
可以使得浏览器能与网页互动起来
然后网景公司招聘了布兰登艾奇,希望将Scheme语言作为网页脚本语言的可能性
3.JavaScript的历史
布兰登艾奇用了十天时间设计出了JavaScript
最初这门语言的名字是Mocha
在Navigator2.0beta版本更名为LiveScirpt
在Navigatorbate3版本正式更名为JavaScript,当时是为了给这门语言搭上Java这个热词
但是这个语言更像是多种语言的大杂烩:
    借鉴了C语言的基础语法
    借鉴了Java语言的数据类型和内存管理
    借鉴了Scheme语言将函数提升到头等公民的地位
    借鉴了Self语言使用基于原型的继承机制

1996年11月,网景公司正式向ECMA提交语言标准
    1997年6月,ECMA以JavaScript语言为基础制定了ECMAScript标准规范ECMA-262
    ECMA-262是一份标准,定义了ECMAScript
    JavaScript成为了ECMAScript最著名的实现之一
    除此之外,ActionScript和JScript也都是ECMAScript规范的实现语言
    所以说ECMAScript是一种规范,而JavaScript是这种规范的一种实现
4.JavaScript的组成
ECMAScript是JavaScript的标准,描述了该语言的语法和基本的对象
    JavaScript是ECMAScript的语言层面的实现
    因为除了语言规范之外,JavaScript还需要对页面和浏览器进行各种操作
    除了基本实现外,还包括DOM和BOM操作
5.JavaScript由谁来运行?
不同的浏览器由不同的内核组成,
事实上,浏览器内核指的就是浏览器的排版引擎,排版引擎也称为浏览器引擎,页面渲染引擎或样板引擎
JavaScript代码就是由JavaScript引擎来执行的
6.认识JavaScript引擎
为什么需要JavaScript引擎?
    高级的编程语言都是需要被转换成最终的机器指令来执行的
    事实上所编写的JS代码无论是交给浏览器或是Node执行,最后都是需要被CPU所执行的
    但CPU只认识自己的指令集,实际上是机器语言,才能被CPU所执行
    所以需要JS引擎帮助将编写的JS代码翻译成CPU指令来执行
7.常见的JavaScript引擎
SpiderMonkey: 第一款JavaScript引擎,由布兰登艾奇开发
Chakra: 微软开发
JavaScriptCore: Webkit中的JavaScript引擎,Apple公司开发
V8: Google开发
8.浏览器内核与JS引擎的关系
以Webkit内核为例,Webkit事实上是由两部分组成的:
    WebCore: 负责解析HTML,布局,渲染等相关工作
    JavaScriptCore: 解析,执行JavaScript代码

二. JavaScript的基本语法

1.noscript元素
如果浏览器不支持JavaScript,用于提供替代内容
<noscript>
    您当前的浏览器不支持JavaScript脚本,请更换浏览器
</noscript>
2.JavaScript的交互方式
alert: 接收一个参数,弹窗
document.write: 接收多个字符串,在浏览器页面中查看
console.log(): 接收多个参数,在浏览器控制台查看
propmt: 接收一个参数,输入框