『壹』 js利用与或运算符优先级实现if else条件判断表达式
复制代码
代码如下:
<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>
『贰』 js中的object对象toString和valueOf的区别
valueOf偏向于运算,toString偏向于显示。<br>1、 在进行对象转换时(例如:alert(a)),将优先调用回toString方法,如若没有重写toString将调答用valueOf方法,如果两方法都不没有重写,但按Object的toString输出。<br>2、 在进行强转字符串类型时将优先调用toString方法,强转为数字时优先调用valueOf。<br>3、 在有运算操作符的情况下,valueOf的优先级高于toString。
『叁』 javascript中的&&和||同时出现要先算哪个
如果没有括号的话,从左至右,有括号的先算括号里面