javascript - 以下js代码有什么不同,求解
本文介绍了javascript - 以下js代码有什么不同,求解的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
doSomething().then(function () {
return doSomethingElse();
});
doSomething().then(function () {
doSomethingElse();
});
doSomething().then(doSomethingElse());
doSomething().then(doSomethingElse);
是在一个网站上看到的,请问这几段js代码有什么区别
解决方案
上面 前者return 后面表示的是函数的返回值是doSomethingElse(),而后者没有指定 return默认返回值是undefined
下面,无论doSomethingElse()还是doSomethingElse都表示函数的一个参数。
简化版例子
function a(){
console.log('a')
return 'a inner';
}
function b(){
a()
}
function c(){
return a()
}
function e(fn){
console.log(fn)
}
b()//a
c()//a "a inner"
e(a)
// function a(){
// console.log('a')
// return 'a inner';
//}
e(a()) // a a inner
这篇关于javascript - 以下js代码有什么不同,求解的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文