导航:首页 > 编程语言 > javascript判断布尔值没用

javascript判断布尔值没用

发布时间:2023-07-11 02:11:22

1. javascript语言中赋值语句有没有布尔值比如a=5能不能判断是true or false

js中,这相当于一个赋值语句,如果b的值大于0或为true,那么就把b的值回赋给a,否答在就把c的值赋给a

布尔值,javascript中以下值会被转换为false
false
undefined
null
0
-0
NaN
""
''

2. JS .readOnly=="readonly"的判断错误

在网页中有时候需要控制文本输入框的“输入状态”,一些关键属性是不能修改的,这个时候需要将文本输入框的readonly属性设置为False,在网页中可以使用
<input name="txt_name" type="text" readonly="readonly" id="txt_Status" name="txt_name" style="width:150px;" />
但是在JS中则不能食用txt_name.readonly="readonly"来设置该属性,由于JS是区分大小写的,所以,在调用该属性的时候,必须使用txt_name.readOnly=true来设置。
当然,网页文本框还有一个属性可以控制它的状态,disabled,这个属性也是限制用户修改文框的内容,只是这个属性设置为"disabled"后,C#的后台代码就无法获得这个控件的内容了。

3. javascript怎么判断是不是布尔值

用typeof试一下,如:var bl=true; console.log(typeof bl);//boolean

4. javascript的逻辑或||和逻辑与&&问题

“&&”运算符可以从三个不同的层次进行理解。

最简单的第一层理解是,当操作数都是布尔值的时候,“&&”对两个值执行布尔与(AND)操作,只有在第一个操作数和第二个操作数都是true的时候,它才返回true。如果其中一个操作数是false,它返回false。

“&&”常用来连接两个关系表达式:

x==0&&y==0//只有在x和y都是0的时候,才返回true

但是“&&”的操作数并不一定是布尔值。对“&&”的第二层理解是,“&&”可以对真值和假值进行布尔与(AND)操作。如果两个操作数都是真值,那么返回一个真值;否则,至少一个操作数是假值的话,则返回一个假值。在JavaScript中任何希望使用布尔值的地方,表达式和语句都会将其当做真值或假值来对待,因此实际上“&&”并不总是返回true和false。

例如:

3&&4//返回一个真值4
2&&null//返回一个假值null
undefined&&null//返回一个假值undefined
//假值是false、null、undefined、0、-0、NaN和"",所有其他的值包括所有对象都是真值

我们深入讨论对“&&”的第三层(也是最后一层)理解。运算符首先计算左操作数的值,即首先计算“&&”左侧的表达式。如果计算结果是假值,那么整个表达式的结果一定也是假值,因此“&&”这时简单地返回左操作数的值,而并不会对右操作数进行计算。反过来讲,如果左操作数是真值,那么整个表达式的结果则依赖于右操作数的值。如果右操作数是真值,那么整个表达式的值一定是真值;如果右操作数是假值,那么整个表达式的值一定是假值。

因此,当左操作数是真值时,“&&”运算符将计算右操作数的值并将其返回作为整个表达式的计算结果:

varo={x:1};
varp=null;
o&&o.x//=>1:o是真值,因此返回值为o.x
p&&
p.x//=>null:p是假值,因此将其返回,而并不去计算p.x

这对于理解“&&”可能不会去计算右操作数的情况至关重要,在上述示例代码中,变量p的值是null,而如果计算表达式p.x的话则会抛出一个类型错误异常。但是示例代码使用了“&&”的一种符合语言习惯的用法,因此只有在p为真值(不能是null或者undefined)的情况下才会计算p.x。

“&&”的行为有时称做“短路”(short circuiting),我们也会经常看到很多代码利用了这一特性来有条件地执行代码。

例如,下面两行JavaScript代码是完全等价的:

if(a==b)stop();//只有在a==b的时候才调用stop()
(a==b)&&stop();//同上

尽管“&&”可以按照第二层和第三层的理解进行一些复杂表达式运算,但大多数情况下,“&&”仅用来对真值和假值做布尔计算。



“||”运算符对两个操作数做布尔或(OR)运算。如果其中一个或者两个操作数是真值,它返回一个真值。如果两个操作数都是假值,它返回一个假值。

尽管“||”运算符大多数情况下只是做简单布尔或(OR)运算,和“&&”一样,它也具有一些更复杂的行为。它会首先计算第一个操作数的值,也就是说会首先计算左侧的表达式。如果计算结果为真值,那么返回这个真值。否则,再计算第二个操作数的值,即计算右侧的表达式,并返回这个表达式的计算结果。

这个运算符最常用的方式是用来从一组备选表达式中选出第一个真值表达式:

//如果max_width已经定义了,直接使用它;否则在preferences对象中查找max_width
//如果没有定义它,则使用一个写死的常量
varmax=max_width||preferences.max_width||500;

这种惯用法通常用在函数体内,用来给参数提供默认值:

//将o的成员属性复制到p,并返回
pfunction(o,p){
p=p||{};//如果向参数p没有传入任何对象,则使用一个新创建的对象
//函数体内的主逻辑
}
阅读全文

与javascript判断布尔值没用相关的资料

热点内容
win10更新后进不了剑灵 浏览:243
iphone471激活出错 浏览:648
怎么把文件拷到u盘 浏览:620
中伊签署文件视频 浏览:661
电信光宽带网络不稳定 浏览:504
网络岗软路由 浏览:995
黑莓z10在哪里下载app 浏览:310
net批量下载文件 浏览:696
怎么把苹果一体机文件拷贝 浏览:117
sql文件怎么写 浏览:9
帝豪ec718导航升级 浏览:257
如何运用编程进行统计 浏览:570
excel如何拉考勤数据 浏览:879
大智慧612手机版本 浏览:796
编程试什么 浏览:252
plc编程要遵循什么规则 浏览:16
苹果平板电脑a1476 浏览:221
创建mysql数据库的步骤 浏览:406
本地磁盘文件夹找不到了 浏览:590
怎么编辑win10的hosts文件 浏览:823

友情链接