V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
justthewayyouare
V2EX  ›  JavaScript

写惯了 js 再去写 ts 有种给自己上脚镣的感觉

  •  
  •   justthewayyouare · 2023-10-27 20:49:16 +08:00 via iPhone · 2891 次点击
    这是一个创建于 398 天前的主题,其中的信息可能已经有所发展或是发生改变。

    原本自由自在,现在自己把自己束缚住了。

    28 条回复    2023-10-28 23:59:08 +08:00
    fd9xr
        1
    fd9xr  
       2023-10-27 20:51:33 +08:00 via iPhone   ❤️ 4
    ? 2023 年才开始写 TypeScript?
    BeautifulSoap
        2
    BeautifulSoap  
       2023-10-27 21:10:13 +08:00 via Android
    同样的话反过来也可以说:先写 ts 再写 js ,原本安安稳稳,换成 js 之后动不动就写出 bug ,而且别说看别人的代码,光是看自己之前写的 js 代码我都恶心得想吐

    之前用 k6 写复杂逻辑的压测脚本,一时偷懒没用 ts 而是用了 js ,结果写到后来写得我要死了。现在你让我再去改自己写的 k6 脚本,我宁愿重写也不想再看哪些代码了。如果再给我个机会,我会毫不犹豫上 TS
    Carseason
        3
    Carseason  
       2023-10-27 21:11:20 +08:00   ❤️ 1
    写了 ts 再回写 js 感觉 js 太难了
    cI137
        4
    cI137  
       2023-10-27 21:58:26 +08:00 via iPhone
    写惯了 go 再写 ts 不想写冒号😆
    LiuJiang
        5
    LiuJiang  
       2023-10-27 22:19:26 +08:00
    @BeautifulSoap 为啥换成 js 动不动就写出 bug ,不是很懂
    mmm159357456
        6
    mmm159357456  
       2023-10-27 22:40:57 +08:00
    可是 js 太狂野了啊,1w 个人有 1w 种写法
    mxT52CRuqR6o5
        7
    mxT52CRuqR6o5  
       2023-10-27 22:52:23 +08:00 via Android
    前端框架不也是束缚上脚镣,用 jquery 多自由自在
    DOLLOR
        8
    DOLLOR  
       2023-10-27 23:00:14 +08:00
    写 TS 能时,编辑器会提示对象里的属性,爽得一批。
    甚至现在我写 python 都一律加 type hints 。
    不想回到以往那种一边写代码,一边查文档,一边打断点查对象,这种很不流畅的开发体验。😆
    Leonard
        9
    Leonard  
       2023-10-27 23:07:01 +08:00 via iPhone
    多写几天就好了,起码属性提示方便点。不过老写 interface 也是有点烦
    icyalala
        10
    icyalala  
       2023-10-27 23:14:03 +08:00
    那你要是去写 rust ,怕是会有被关铁处女的感觉了
    kloudmuka
        11
    kloudmuka  
       2023-10-27 23:19:23 +08:00
    写了 TS 再换回 JS 会觉得这是什么傻逼语言
    Pencillll
        12
    Pencillll  
       2023-10-28 01:50:45 +08:00
    你说的对,但是 TypeError: Cannot read properties of undefined
    musi
        13
    musi  
       2023-10-28 07:16:54 +08:00 via iPhone
    @Pencillll 这玩意你用 ts 也解决不了啊,ts 运行时还是会编译成 js ,只要运行时有一个变量是 undefined 不就有这个错了?
    beginor
        14
    beginor  
       2023-10-28 08:00:04 +08:00 via Android
    用惯了 ts 再写 js 时,发现要么依赖现成的 d.ts ,要么写大量的 jsdoc ,最后发现还是 ts 相对容易些
    justdoit123
        15
    justdoit123  
       2023-10-28 08:42:23 +08:00
    @musi 这玩意没办法给你完全解决。你说,API 请求到的对象,就是不安约定的来一定要少个字段,这种无解。 但是其它大部分情况,都能在 build 时报错提醒你某某字段可能是 nil ,你需要处理好。
    lisxour
        16
    lisxour  
       2023-10-28 09:16:56 +08:00
    @LiuJiang 不加 jsdoc 的情况下,万物皆 any ,没有语法提示,很容易写错函数名,方法名,参数类型也很容易搞错。
    lisxour
        17
    lisxour  
       2023-10-28 09:18:33 +08:00
    @beginor 完全没有 jsdoc 的才是噩梦,一辈子都在打断点,写 console.log
    chenliangngng
        18
    chenliangngng  
       2023-10-28 09:23:05 +08:00   ❤️ 5
    我写了 3 年 ts 了,以前觉得 ts 让 js 获得新生,有了 ts 用各种类库和 api 都很爽

    时至今日事实证明,还是我见过的 shi 山还不够多和工作强度不够卷,而导致见识短浅,ts 让 shi 山硬度增加变成金刚 shi ,一个锄头不仅能挖出一个坑,还能溅一身 shi 火星
    QingStone
        19
    QingStone  
       2023-10-28 09:52:30 +08:00 via iPhone
    @chenliangngng #18 哈哈哈哈哈
    duke807
        20
    duke807  
       2023-10-28 10:00:05 +08:00
    当年随着 anguilar 升级,开始被迫使用 ts 一段时间

    后来想通了,现在框架只用 vanilla-js.com
    e3c78a97e0f8
        21
    e3c78a97e0f8  
       2023-10-28 12:35:11 +08:00
    对于我这种打字经常打错的人来说,没有静态类型约束的语言,我写起来都充满了不安全感。更恶心的是既没类型也没文档的代码。
    LiuJiang
        22
    LiuJiang  
       2023-10-28 13:14:29 +08:00
    @lisxour 有了 ts ,团队规范很重要,团队内有些人不规范使用,到处 any , 也会出各种问题
    写错函数名,方法名,vscode 有一些智能提示,还不错
    参数类型搞错,感觉还是经验问题
    RedNax
        23
    RedNax  
       2023-10-28 13:43:09 +08:00 via iPhone
    @LiuJiang eslint+review 也很重要
    随便写 any 那 TS 也没啥用。
    jianyang
        24
    jianyang  
       2023-10-28 13:51:26 +08:00
    那反过来是不是裸奔的感觉
    Qjues
        25
    Qjues  
       2023-10-28 16:26:05 +08:00
    观点: 自由并不一定就是褒义,也可能意味着无序,无规矩。对于团队长期项目来说,太自由就不是好事情。
    Torpedo
        26
    Torpedo  
       2023-10-28 20:08:44 +08:00
    ts 不就是 js 加了类型么。不会的类型你写 any 不就行了
    mmdsun
        27
    mmdsun  
       2023-10-28 21:08:14 +08:00
    你让 ChatGPT 帮你给代码加类型支持就好。如写不习惯 typescript
    chenyu0532
        28
    chenyu0532  
       2023-10-28 23:59:08 +08:00
    咱俩情况差不多。用 js 开发游戏,稍微大点,bug 真是非常难找。
    自从用了 ts ,时间节省了至少一半。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3183 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 13:35 · PVG 21:35 · LAX 05:35 · JFK 08:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.