js工作中日常问题集中

Posted 小番茄酱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js工作中日常问题集中相关的知识,希望对你有一定的参考价值。

1.判断问题

如果type存在就设置type的值为type,否则设置type为0:

原始的写法,使用 if else:if(type){type = type} 

使用三元操作符:type : type ? type : 0

使用"或": type : type || 0

· if(a){alert(‘ok‘)} 等价于 a && alert(‘ok‘)

2. &&  和 ||

例子:

var a = 2;
var b = 3;
var andflag = a && b ;
var orflag = a || b;

问andflag 和orflag 分别是什么?

答案: andflag = 3,orflag = 2; 

在运算过程中,首先js  会将 && 和||  两边的值转成Boolean 类型,然后再算值 ,&&运算如果返回true,则取后面的值,如果|| 返回true,则取前面的值 , 而其中数值转换成boolean 的规则 是:

对象、非零整数、非空字符串返回true,其它为false   ;

同理:0、""、null、false、undefined、NaN都会判为false,其他都为true. 

a && b  的运算就是  :因为  a  和  b全是非零整数,所以  a  和  b  也就是true ,而   true && true  返回   true   ,则取后面的b   ,同理  a 和b 全是非零整数,a  和b  全是true  ,则true || true  返回   true ,取|| 前面的值 也就是2;

同样:该逻辑运算符支持短路原则:

如 var  a = “”  ||  null  || 3  ||  4   —->    var a = fasel || false || true ||  true  结果为true  则返回第一个true,即是3

var b = 4 && 5 && null && 0   ——>   var b = true && true && false && false   结果是false   则返回第一个false   即是null .

 

短路表达式:作为"&&"和"||"操作符的操作数表达式,这些表达式在进行求值时,只要最终的结果已经可以确定是真或假,求值过程便告终止,这称之为短路求值。这是这两个操作符的一个重要属性。

以上是关于js工作中日常问题集中的主要内容,如果未能解决你的问题,请参考以下文章

译文:18个实用的JavaScript代码片段,助你快速处理日常编程任务

回归 | js实用代码片段的封装与总结(持续更新中...)

Relay.js 没有正确解析组合片段

使用带有渲染功能的 Vue.js 3 片段

日常工作记录——JAVA中APIDOC的应用

如何做好日常运维的安全工作