BOM 是“ Browser Object Model ”的缩写,简称“ 浏览器对象模型 ”。
BOM 定义了 JavaScript 操做浏览器的接口,提供了访问某些功能(如浏览器窗口大小、版本信息、浏览历史记录等)的途径以及操做方法。
遗憾的是,BOM 只是 ECMAScript 的一个扩展,没有任何相关标准,W3C也没有对该部分做出规范,每一个浏览器厂商都有本身的 BOM 实现,这能够说是 BOM 的软肋所在。
一般状况下,浏览器特定的(即非 W3C 标准规定的)JavaScript 扩展都被看做 BOM 的一部分,主要包括:数组
注意:BOM 有一些“事实上的标准”,如操做浏览器窗口、获取浏览器版本信息等,在不一样浏览器中,对它们的实现方法是同样的。浏览器
JavaScript 支持单行注释和多行注释:单行注释以 // 开头;多行注释以 /* 开始,以 */ 结尾。 JavaScript不支持多行嵌套注释。cookie
JavaScript 是弱类型的语言,声明变量时无需声明数据类型,JavaScript 会根据变量内容自动判断数据类型。这就意味着,JavaScript 拥有动态类型,同一个变量能够赋予不一样类型的值。这在C语言、C++和Java等强类型语言中是没法办到的。JavaScript 变量命名规范:变量必需以 字母、$ 和 _ 开头,不能以数字和其余字符开头。区分大小写dom
在JavaScript中,未赋值变量有一个默认值,是 undefined ,即” 未定义 “。在JavaScript中,引用一个未赋值的变量,其值为 undefined ,引用一个未声明的变量将会引起错误。spa
Number | 数字类型 |
String | 字符串类型 |
Boolean | 布尔类型 |
Undefined | 表示一个变量未被赋值 |
Null | 空的对象 |
Number 类型还有一个特殊值 NaN(非数值 Not a Number)。用于表示一个原本要返回数值的操做并未返回数值。code
若是定义的变量准备在未来用于保存对象,那么最好将该变量初始化为 null 而不是其余值。对象
常见的运算符有算数运算符、比较运算符和逻辑运算符。“+”号不但能够将两个数据相加,还能够用来链接字符串。当字符串和数值进行混合运算时,JavaScript 会自动判断“ + ”号的做用,是相加运算,仍是链接字符串。若是是链接字符串,数值也将被转换为字符串。blog
var myArray=new Array(); myArray[0] = " zhangming "; myArray[1] = " zhaowei "; myArray[2] = " wanghua ";
var myArray=new Array(" zhangming " , " zhaowei " , " wanghua ");
var myArray=[]; myArray[0] = " zhangming "; myArray[1] = " zhaowei "; myArray[2] = " wanghua ";
var myArray=[ " zhangming " , " zhaowei " , " wanghua " ];
在JavaScript中,经过 length 来得到数组、字符串的长度。接口
经过 Math 对象的 random() 方法能够返回一个介于 0 ~ 1 之间的随机数。ip
if( ){ } else if( ){ }至关于if( ){ }else{ if( ){ } }
三目运算符
语法:
conditions ? statementA : statementB ;
上述语句,首先判断条件condition,若结果为真则执行语句statementA,不然执行语句statementB。
值得注意的是,因为 JavaScript 脚本解释器将分号“ ; ”做为语句的结束符,statementA 和 statementB 语句均必须为单个语句,使用多个语句会报错。
在JavaScript中,使用 break 和 continue 语句跳出循环: