(知识点)逗号运算符的值就是右操作数的用法
<pre class="brush:js;">
var iNum1 = 1, iNum = 2, iNum3 = 3;</pre>
逗号运算符最常用的场景是在for循环中,这个for循环通常具有多个循环变量:
<pre class="brush:js;">
//for循环中的第一个逗号是var语句的一部分
//第二个逗号是逗号运算符
//它将两个表达式(i++和j--)放在一条语句中
for(var i=0, j=10;i>>= a>>>=b a=a>>>b
&= a&=b a=a&b
|= a|=b a=a|b
^= a^=b a=a^b</pre>
在大多数情况下,表达式为:
<pre class="brush:js;">
a op= b</pre>
这里op代表一个运算符,这个表达式和下面的表达式等价
<pre class="brush:js;">
a = a op b</pre>
在第一行中js 逗号运算符,表达式a计算了一次js 逗号运算符,在第二行中,表达式a计算了两次,只有在a包含具有副作用的表达式(比如函数调用和赋值操作)的时候,两者才不等价
<pre class="brush:js;">
data[i++]*=2;
data[i++] = data[i++]*2;</pre>
圆括号运算符
圆括号运算符有两种用法:如果表达式放在圆括号中,作用是求值;如果跟在函数后面,作用是调用函数
把表达式放在圆括号之中,将返回表达式的值
<pre class="brush:js;">
console.log((1)); //1
console.log(('a')); //'a'
console.log((1+2)); // 3</pre>
把对象放在圆括号之中,则会返回对象的值,即对象本身
<pre class="brush:js;">
var o编程 = python{p:1};
console.log((o));// Object {p: 1}</pre>
将函数放在圆括号中,会返回函数本身。如果圆括号紧跟在函数的后面,就表示调用函数,即对函数求值
<pre class="brush:js;">
function f(){return 1;}
console.log((f));// function f(){return 1;}
console.log(f()); // 1</pre>
由于圆括号的作用是求值,如果将语句放在圆括号之中,就会报错,因为语句没有返回值
<pre class="brush:js;">
console.log(var a = 1);// SyntaxError: Unexpected token var
console.log((var a = 1));// SyntaxError: Unexpected token var</pre>
void运算符
void是一元运算符,它出现在操作数之前,操作数可以是任意类型,操作数会照常计算,但忽略计算结果并返回undefined。由于void会忽略操作数的值,因此在操作数具有副作用的时候使用void来让程序更具语义
<pre class="brush:js;">
console.log(void 0); // undefined
console.log(void(0)); // undefined</pre>
【作用一】替代undefined
由于undefined并不是一个关键字,其在IE8-浏览器中会被重写,在高版本函数作用域中也会被重写;所以可以用void 0 来替换undefined
<pre class="brush:js;">
var undefined = 10;
console.log(undefined);//IE8-浏览器下为10,高版本浏览器下为undefined
function t(){
var undefined = 10;
console.log(undefined);
}
console.log(t());//所有浏览器下都是10</pre>
【作用二】客户端URL
这个运算符最常用在客户端URL——javascript:URL中,在URL中可以写带有副作用的表达式,而void则让浏览器不必显示这个表达式的计算结果。例如,经常在html代码中的标签里使用void运算符
<pre class="brush:js;">
打开一个新窗口</pre>
【作用三】阻止默认事件
阻止默认事件的方式是给事件置返回值false
<pre class="brush:js;">
//一般写法
文字</pre>
使用void运算符可以取代上面写法
<pre class="brush:js;">
文字</pre>
以上这篇浅谈javascript运算符——条件,逗号,赋值,()和void运算符就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
本文标题: 浅谈javascript运算符——条件,逗号,赋值,()和void运算符
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
尘集杂货铺和官网1t5-cn
11月11日
[已回复]
希望主题和播放器能支持SQLite数据库,AI能多个讯飞星火