42 条回复  •  2020-06-18 20:28:59 +08:00
flyhelan
flyhelan2 小时 37 分钟前
最后一张图太小了看不清
1
liuhuihao
liuhuihao2 小时 32 分钟前
这有啥好争的,命名习惯而已,个人比较习惯 self 这种写法,但感觉用啥的都有。现在有了箭头函数之后 这种写法也少了
2
annielong
annielong2 小时 26 分钟前
小程序见了 that,然后就经常用 that 了
3
djs
djs2 小时 25 分钟前
现在连命名都可以有优越感了吗。。。
4
w99w
w99w2 小时 21 分钟前
有些大兄弟真的是闲得慌。
5
7gugu
7gugu2 小时 20 分钟前 via Android
小程序常态,天天用 that😄
6
nguoidiqua
nguoidiqua2 小时 19 分钟前
论坛不是用来挂人的,而且挂别人等于挂自己。

用 that 来指代 this 确实不合语言习惯,又不是只会这么一个单词。
7
hjahgdthab750
hjahgdthab7502 小时 19 分钟前
遇到过

this

self

that 是什么语言里面的?
8
niubee1
niubee12 小时 18 分钟前
搞界面的人都比较闲,所以才会研究这些
9
erwin985211
erwin9852112 小时 18 分钟前
说真的,我从开始工作就没写过 that=this 这种(17 年工作),我看见别人写这样头也有点大。我目前还是个低级前端。
10
xiaoming1992
xiaoming19922 小时 16 分钟前 via Android
用了箭头函数,最近一年应该没再用过 this 了
11
airqj
airqj2 小时 15 分钟前 via Android
@hjahgdthab750 小程序里
12
misaka19000
misaka190002 小时 12 分钟前
楼主浪费了我宝贵的一分钟时间,block 了
13
Hboy
Hboy2 小时 11 分钟前
我就习惯用 me 指代 this,这跟个人习惯有问题吧,不是什么是非大问题,没啥可争的,一个人一个写法
14
cmdOptionKana
cmdOptionKana2 小时 10 分钟前
@erwin985211 你在胖箭头出来之前,写 js 多吗?那时候 that=this 或者 self = this 是非常常见的,几乎不可避免。
15
murmur
murmur2 小时 8 分钟前
self me that 有什么不同的么
16
myCupOfTea
myCupOfTea2 小时 8 分钟前 via Android
babel 编译后好像用的 _this _this2 这些,不过用 that 也没啥吧,确实见过
17
cmdOptionKana
cmdOptionKana2 小时 6 分钟前
@nguoidiqua that = this 完全符合 js 的语言习惯以及英语国家的语言习惯(本来就是英语国家的人先这样用的,是从外国传进中国的),这里 that 不是指代 this,而是为了避免 js 里的 this 的副作用。
18
xgfan
xgfan1 小时 59 分钟前
前端圈子这么严格的吗
i 了 i 了
19
jinwyp
jinwyp1 小时 56 分钟前
js 一般都用 that, 用 self 都是其他语言, 感觉 that 挺好, 和 this 对应。self 就很一般 完全丧失了语义
20
nguoidiqua
nguoidiqua1 小时 56 分钟前
@cmdOptionKana

我说的语言习惯是指口语习惯。

用肯定是英语国家的人先这么用的,但是先有人这么用就代表符合习惯吗?如果这么说的话,大家也没必要吐槽别人的一些奇葩命名了,因为别人这么用至少是符合 TA 的习惯的。

至于它干什么用的,我知道。我就想问下,me self t 这些单词不能用还是没学过呢?
21
9yu
9yu1 小时 46 分钟前 via Android
我也用 that
22
oneisall8955
oneisall89551 小时 41 分钟前 via Android
能看懂就好啦,没必要争论
23
Resource
Resource1 小时 41 分钟前
前端圈真的啥都能吵起来
24
also24
also241 小时 40 分钟前
等等。。。 为什么都在讨论是否用 that ?

楼主的重点应该是 “人身攻击” 的那一句吧。
25
cmdOptionKana
cmdOptionKana1 小时 38 分钟前
@nguoidiqua 我的原句是 “符合 js 的语言习惯以及英语国家的语言习惯”,我已经包含了口语习惯,英语国家的人早就在正式的生产代码里,以及在正规出版的书籍里这样使用,我觉得这足以说明是符合习惯的。

me,self 也可以用,楼主和我以及上面全部回复的人,都没有说 me,self 不能用。现在楼主吐槽的是,用了 that 被群嘲,而有证据证明 that 是正常用法。
26
hubqin
hubqin1 小时 37 分钟前
有了箭头函数 就不用另外存一遍 this 了
27
wanacry
wanacry1 小时 24 分钟前 via iPhone
即把闲的蛋疼啊楼主?
28
seki
seki1 小时 19 分钟前
0202 年了还得手动存个 this,行行好吧不要祸害同事了
29
DoodleSit
DoodleSit1 小时 17 分钟前
self 、that 、thiz 都用过,命名而已,这没有什么好优越的吧
你不用箭头函数之前,this 问题是怎么解决的
30
dremy
dremy1 小时 13 分钟前 via iPhone
闲的蛋疼才会争执这个…
31
swulling
swulling1 小时 13 分钟前
他骂你,你就骂回去,别像个幼儿园的小朋友告老师一样去挂人。

现在的风气真的差
32
jiangzm
jiangzm1 小时 8 分钟前
不喜欢用 that,用 that 的人给我的感觉像是从哪里刚学来的,知其然不知所以然的感觉。

我一般用 self 或者 _self 。
33
longjiahui
longjiahui1 小时 4 分钟前
我用_this ......
34
nguoidiqua
nguoidiqua1 小时 2 分钟前 via Android
@cmdOptionKana

我知道你说的什么,我就是告诉你,我说的只是口语习惯。

它符合不符合 js 的习惯我不想讨论,我的前提就是假设它符合 js 世界的习惯,但 js 这种习惯不符合口语习惯。

至于楼主和对方那点小恩怨,我觉得真的没什么好说的,他们两个都脱离了就事论事的范畴,都有对别人进行评判,但也不是什么恶毒攻击,一点小事而已。
35
Sapp
Sapp57 分钟前
挂人是个憨批操作
命名习惯没必要争议
现在还在用 that 、self 、xxx 都是憨批操作,有什么好争的
36
by73
by7347 分钟前
这是两个问题吧 = = jQuery 里的 that 其实是因为 function() {} 要捕获外部 this 的原因,而第一张图的 that 就比较不明所以了,这种代码一般 code review 不会过的(猜测)。而且 jQuery 下就只有这么一处地方用到了 that,说明代码的规范还是有的。。
37
ooh
ooh45 分钟前
为什么不直接告诉他徒弟,非要发个帖子,我刚学编程 print('Hello World') 报错卡了两天...
38
love
love35 分钟前
https://searchcode.com/?q=that+%3D+this&lan=22
89,207 results for 'that = this'
39
cmdOptionKana
cmdOptionKana21 分钟前
20,582 results for 'self = this'

明显更少
40
Hanggi
Hanggi21 分钟前
行了都别吵了,以后这么写


```js
var 这个 = this;
```
41
zhuisui
zhuisui7 分钟前
看到楼上有些说用 that 指代 this 不如 self 和 _this 的,理由是不符合 js 的语言习惯。
这真的很有意思,变量名是用来指代值的含义,当你在其他作用域用到这个变量的时候,它的确是 `that`,理解一下 "I am using variable `that` in `this` domain and `that` is `this` of `that` domain"。
更加表意的变量名,相比 _this 和 self 来说。
42