一、操作符:
一元操作符
递增操作符 递减操作符
分为 前置型(--a ++a) 和 后置型 (a-- a++)
区别如下:
var a = 3,b=6;
c = --a +b; //c=8 前置型 是 先执行自身的运算,再执行 所在语句的运算 var a = 3,b=6;
c = a-- +b; //c=9 后置型 是 先执行所在语句的运算,再执行 自身的运算 var a = 3,b=6;
c = ++a +b; //c=10 先执行自身运算 var a = 3,b=6;
c = a++ +b; //c=9 先执行所在语句运算
in 操作符
The in
operator returns true
if the specified property is in the specified object.
使用in操作符时,原型中的可枚举的属性也会被访问到。
有两种方式使用in操作符:
- 单独使用
- 在for-in循环中使用
左移运算符(«)
左移运算符表示将一个数的二进制值向左移动指定的位数,尾部补0,即乘以2的指定次方(最高位即符号位不参与移动)。
如果左移0位,就相当于将该数值转为32位整数
二、变量
全局变量(定义全局变量的三种方式):
1.在任何函数之外放置一个var语句:
var foo = value; //声明一个不可删除的全局变量
2.直接给全局对象添加一个属性。全局对象是所有全局变量的容器,在Web浏览器里,全局对象名为window:
window.foo = value;//创建全局对象的一个可删除属性
3.直接使用未经声明的变量,这被称为隐式的全局变量:
foo = value;//创建全局对象的一个可删除属性
当声明一个JavaScript全局变量时,实际上是定义了全局对象的一个属性,使用方式1创建的属性不可删除,使用方式2,3创建的属性可以删除。