javascript 写法问题
我在看一个npm包的源码时,看到一个写法,但不知道这个写法有什么特别的,或者有什么好处
function foo(p){
return p + 1
}
// 以下写法
const tmp = (0, foo)(123)
// 和
const tmp = foo(123)
// 有什么区别?或者有什么好处?
我在看一个npm包的源码时,看到一个写法,但不知道这个写法有什么特别的,或者有什么好处
function foo(p){
return p + 1
}
// 以下写法
const tmp = (0, foo)(123)
// 和
const tmp = foo(123)
// 有什么区别?或者有什么好处?
(0, foo)就是一个逗号表达式,返回值就是foo函数
你这段代码里没区别,但是如果foo是一个对象里的方法的话(0, foo)可以更改this指向(一般是让其指向window)
在浏览器控制台敲了个demo,大概意思一下