js利用与或运算符优先级实现if else条件判断表达式

JavaScript017

js利用与或运算符优先级实现if else条件判断表达式,第1张

复制代码

代码如下:

<script

type="text/javascript">

/*******************************************************************

利用运算符优先级实现ifelse表达式

result

=

expression1

&&

expression2

当且仅当两个表达式的值都等于

True

时,

result

才是

True。

如果任一表达式的值等于

False,

result

False。

JScript

使用下面的规则,来把非

Boolean

值转换为

Boolean

值:

所有对象都被认为是

true。

字符串当且仅当为空时被认为是

false。

null

和未定义的均被认为是

false。

数字当且仅当为零时是

false。

*******************************************************************/

alert(1&&0)

//false,return

the

first

false's

argument

0

alert(1&&2)

//true,return

the

last

true's

argument

2

/*******************************************************************

result

=

expression1

||

expression2

如果两个表达式中有一个或两个等于

True,则

result

True。

JScript

使用下面的规则来把非

Boolean

值转换为

Boolean

值:

所有对象都被认为是

true。

字符串当且仅当为空时才被认为是

false。

null

和未定义的均被认为是

false。

数字当且仅当为

0

时才是

false。

*******************************************************************/

alert(1||0)

//true,return

the

first

ture's

argument

1

alert(0||false)

//false,return

the

last

false'

argument

false

/*******************************************************************

"并列"表达式,返回最后一个表达式

*******************************************************************/

alert((1,0,-1))

//return

the

last

argument

-1

/*******************************************************************

利用运算符优先级实现if(...){...}else{...}

无明确返回值的一律返回undefined

undefined,null都将被转换为false

*******************************************************************/

var

a

=

true

a

&&

(alert('true'),1)

||

alert('false')

/*******************************************************************

或者用三目运算符

*******************************************************************/

a

?

alert('true')

:

alert('false')

</script>

1.表达式(expressions)

表达式是由运算符构成,并运算产生结果的语法结构。每个表达式都会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数.下面的每行代码都是一个表达式:

var a = (5 + 6) / 2//表达式:(5 + 6) / 2

var b = (function(){ return 25})()//表达式: (function(){ return 25})()

foo(a*b)//表达式:a*b

2.语句(statements)

语句则是由“;(分号)”分隔的句子或命令。如果在表达式后面加上一个“;”分隔符,这就被称为“表达式语句”。它表明“只有表达式,而没有其他语法元素的语句”。

var a = (5 + 6) / 2//整行,赋值语句

if(a>12) { statements} //条件语句

var o = {}//赋值语句

(function(obj){ obj.b = 23})(o||{})//表达式语句

一般的javascript中的语句分为下面几种:

(1)声明语句:变量声明和函数声明

(2)赋值语句

(3)控制语句:能够对语句执行顺序产生改变,包括条件语句和循环语句,当然还有比较特殊的标签语句。

(4)表达式语句:这些语句去掉最后分号,都也可当表达式用的。常见的有:对象操作(new、delete)、函数调用(函数执行,必有返回值)等。

var num = 9//声明、赋值语句

vloop: //标签语句

{//其实这里大括号可以不需要的,在这里我只想向大家展示一下这种代码块结构而已

for(var i=1i<10i++) { //循环语句

if(i==num){ //条件语句

break vloop

}else{

num = num - 1

}

}

}

console.log(num)//表达式语句,输出:5

由上面可以看出,表达式和语句还是存在很大区别的,可也说表达式是语句的构成部分,而语句则又可以组成可执行代码块。