1.delete是一元操作符,用来删除对象属性或者元素。
var a={
x:1,
y:2
}
delete a.x; //删除x属性
“x”in a //false;a对象中已经不存在x属性
alert(a.x) //undefined;这里还是存在“东西”的
就如:
var b=[1,2,3];
delete b[0];
b.length //3;还是3,虽然上面已经删除了b[0]
2.void运算符
void忽略操作的值,因此在操作数具有辅助作用的时候使用void来让程序更具语义
例子:
void 3 //undefined
void 3+5 //NaN;void的优先级比+高
void (3+5) //undefined
正如我们常在这里见到的一样:
<a href="javascript:void(0)"></a>
//或
<a href="javascript:void 0"></a>
这样使得<a>标签点击没有任何反应。只是具有手的形状而已。
我们也常见到这样的情况:
<a href="#"></a>
这个指的就是该页面本身。
一般用于anchor(锚点)标记定位。
如:
AA
<br>AA
<br>AA
<br>AA
<br>AA
<a name="BB">BB</a>
<br>AA
...
<br>AA
<br>AA
<a href="#BB">定位到BB</a>
//可直接跑到BB处
还有一种是这个写法也可以滚动到顶部:
<a href="javascript:document.body.scrollIntoView()">使得整个body区域可以看见</a>
3.逗号(,)运算符
for(var i=0,j=10;i<j;i++,j--){
console(i+" "+j);
}
4.function
在定义函数的时候,并不会执行函数体内部的代码,它和调用函数时待执行的新函数对象相关联。
5.for/in
for(v in object)
解释:在for/in语句中,JavaScript解析器先计算object表达式,如果表达式为null或undefined,JavaScript解释器将会跳过循环并执行后续代码。
如果表达式等于一个原始值,这个原始值将转换为与之对应的包装对象。
然后依次枚举对象的属性来执行循环。然后在每次循环前,JavaScript都会先计算v表达式的值,并将一个字符串付给它。
6.跳转语句
break语句是跳转到循环或其他语句的结束。(存在于循环与switch语句中合法)
continue语句是终止本次循环的执行,并开始下一次循环的执行。(存在于循环中合法)
return语句让解释器跳出函数体的执行。(存在于函数体内合法)
7.标签语句
由标识符和冒汗组成:
identifier: statement
给语句定义标签,就可在程序任何地方通过标签名引用这条语句了。
如下:
maten:while(i!=null){
...
continue maten;//跳到下一次循环
...
}