求一种js写法的解释var w=window.innerWidth|| document.documentElement
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/10 19:36:02
求一种js写法的解释
var w=window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
这里的变量w为什么可以用或的关系表示呢?
var w=window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
这里的变量w为什么可以用或的关系表示呢?
首先,这里的||你可以变相跟C#中的?放一起来考虑,另外你需要知道在js中,像数值0,空字符串,空值,undefined等这些在跟bool值做比对的时候都是false,而其他都为true,那么这里
var w=window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
如果第一个为0,那么看第二个,如果第二个也为0(即false),那么看第三个,直到有一个非0位置,也就是说非false为止,就返回该值
或者也可以这么理解成if-elseif-else,即这里的
var w;
if(window.innerWidth!=0/undefined/...等其他)
{
w=window.innerWidth;
}
elseif(document.documentElement.clientWidth!=0/其他)
{
w=document.documentElement.clientWidth;
}
elseif(...){...}
else{ ... }
用非运算符只是精简写法而已,同三元表达式,linq等,目的都是为了精简代码
var w=window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
如果第一个为0,那么看第二个,如果第二个也为0(即false),那么看第三个,直到有一个非0位置,也就是说非false为止,就返回该值
或者也可以这么理解成if-elseif-else,即这里的
var w;
if(window.innerWidth!=0/undefined/...等其他)
{
w=window.innerWidth;
}
elseif(document.documentElement.clientWidth!=0/其他)
{
w=document.documentElement.clientWidth;
}
elseif(...){...}
else{ ... }
用非运算符只是精简写法而已,同三元表达式,linq等,目的都是为了精简代码
求一种js写法的解释var w=window.innerWidth|| document.documentElement
js定义多个变量的写法:var a="aaa",b="bbb",c="ccc"; document.write(a+"
js 这种写法是什么意思 var a= b || c
js 算法 var arr = [1,2,3,4] 求组合的算法
js中var x=1 || 2 || 3;谁能给讲解下这种写法?
JS中window.parent.document.getElementById("mainFrame")这句是什么意思
js中,var a=b,c,
JS中 document 意思
JS document.Keypad
var some_date= new date() document.write(some_date.getDay()+
var a=11; document.write(a.toString(2)+"
var 代码的意义JS语言中定义变量用var name="peter"但直接定义name="peter"用documen