使用 call()方法调用函数 和 将作用域 this 直接作参数传入有什么区别?

2020-05-30 17:25:09 +08:00
 gromit1337
小程序里的一个封装方法需要调用页面的组件, 要用到 this.selectComponent().doThing() ,这里引起了标题的争议了
2878 次点击
所在节点    JavaScript
21 条回复
ChanKc
2020-06-05 13:01:43 +08:00
@gromit1337 如果类似于#6 的案例
我看 Cay S. Horstman 提出的 golden rule 说
Don’t use this outside constructors or methods.
也就是不要在类以外的地方使用 this
Douglas Crockford 的做法更极端,他完全不用 this 。
我觉得普通的函数,不是属于特定类或者具有特定“shape”的对象的方法的函数就最好不要出现 this

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/676994

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX