本文主要是介绍JavaScript中的return语句中的的意义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在廖雪峰大佬的教程里廖雪峰教程发现了一个语句,就是
return s && s.trim()
真的是不明白在return中是做判断是什么意思,于是搜了一下,在stackflow中找到了答案 正解
return s && s.trim()
的意思就是:
if (s) return s.trim();else return s;
廖老师的代码如下
var arr = ['A', '', 'B', null, undefined, 'C', ' '];
var r = arr.filter(function (s) {return s && s.trim(); // 注意:IE9以下的版本没有trim()方法
});
这里面我们可以知道,对于'null’ 和'undefined',他们并没有trim()的方法,所以逐一的去带入可以发现:
if('A')不为false,return 'A'.trim();这里结果为'A';
if('')为false,return '';为空;
if('B')不为false,return 'B'.trim();这里结果为'B'为true,执行filter()函数,传‘B’;
if(null)为false,return null;这里结果为空,为false,丢弃;
if(undefined)为false,return undefined;这里结果为空,为false,丢弃;
if('C')不为false,return 'C'.trim();这里结果为'C',执行filter()函数,传‘C;
if(' ')不为false,return ' '.trim();这里结果为空,为false,丢弃;
同理,我们可以推出return a||b;和这个相反,即return b if a is falsy, return a if a is truthy
这篇关于JavaScript中的return语句中的的意义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!