最近在学React.js, 其中涉及不少Javascript的知识,前面掌握的不牢固,遇到了点麻烦,主要是在 () => 方面,上网搜了点资料后,有了以下的理解,(很可能是不对/不全面的)
const name = getName(); // 这里的name是getName() 方法返回的值
2. const name = () => getName() ; 其实等同于
const name = function() { return getName() };
这两种方法的不同在于,name在1中的是等于函数所返回的值,但是在2中是等于这个函数。
如果要print出来这个值,对于1的做法是
console.log(name);
对于2的做法是
console.log(name());
还有补充的一点是,对于一个在调用一个函数时,加括号与否的问题。 我的理解是, 加括号表示立即执行该函数,并返回这个函数所要返回的值。不加括号是需要该函数只有在某一事件触发的情况下,才能返回这个值。
以上仅仅是个人理解,如有不对,还望指正!