Javascript三元素运算符的多重使用技术
请跳过这只鸟,大鸟^ __ ^帮助。
=通用行
表达(expr1)(表达式):(expr3)
当expr1的值为true,该值是表达式的值,该值为false时,值expr3。
============
常见的用法
当你发现你经常使用
复制代码代码如下所示:
如果(| |天皇崇拜崇拜和检查){
考试不要不及格;
其他{ }
门和门悬挂;
}
所以三元素表示是
复制代码代码如下所示:
谢谢哥哥| |崇拜皇帝不及格:门考试挂
英俊的发现代码要好得多。
在日常生活中,有这样的一种判断。特别是在嵌套时,使用三元时更为和谐,使您的代码看起来更清晰、更清晰。
稍微聪明一点的用法
通过不断的修改,可以得到很多三元。
复制代码代码如下所示:
国旗('body美元),AddClass('hover):$('body)。RemoveClass('hover);
更变态。
复制代码代码如下所示:
$('项目'){ flag'addclass:'removeclass}('hover)
上面的代码看起来很困惑,因为当标记为true时,代码变成如下代码:
复制代码代码如下所示:
$('项目){ 'addclass}('hover)
这种写作方式等于。
复制代码代码如下所示:
$('项目'),AddClass('hover)
第二升华
你可以根据你的需要使用你想要处理的更多的东西。
复制代码代码如下所示:
函数A(){
做某事
}
函数B(){
做某事
}
标志A():B();
所以整个老师
在这种情况下,这两个按钮是向前的动作,是向后的动作,操作的功能都是一样的。
复制代码代码如下所示:
无功action_turn =功能(E型){
VaR自$(E)最近(李);
VaR目标=自{ type'prev= = = 'prev:下}();
Target.addClass('has-img);
Self.removeClass('has-img)
}
btn_next = $(var的#项目光面板a.next)
btn_next.click(函数(){()
action_turn(这步);
返回false;
});
btn_prev = $(var的#项目光面板a.prev)
btn_prev.click(函数(){()
action_turn(这'prev);
返回false;
});
尽量避免这种情况。
复制代码代码如下所示:
警报(true'true:假不:F)
我的意思是尽量避免嵌套三元,因为js中的语句是从右到左的,上面的代码相当于
复制代码代码如下所示:
警报(true'true:(假不:F))
例如,PHP中的结果是完全不同的。三元的套排是左边的优先权。
复制代码代码如下所示:
回声((true'true:不假):F) / / PHP
提示:
还发现PHP中的三元有这样的提示。
注意:注意三元素操作符是一个语句,所以它的评估不是一个变量,而是语句的结果。如果你想通过引用返回一个变量,这很重要。在引用返回的函数中的一个语句中返回$ A:$ = 42;不工作,PHP的后一个版本将发出警告。
但是通过实验,我们发现Javascript中的上述方法可以起到作用,这可能是JS比PHP更BT的原因。