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

关于 TypeScript 类型推断的疑问🤔️

  •  
  •   auroraccc · 2019-11-28 14:10:47 +08:00 · 3713 次点击
    这是一个创建于 1852 天前的主题,其中的信息可能已经有所发展或是发生改变。

    ts 初学者

    function add(a: number, b: number) { return a + b; }

    像这样的函数,由于有类型推断可以知道函数的返回值类型,还需要手动地声明函数的返回类型吗

    感谢回答🙏

    14 条回复    2019-11-29 20:47:13 +08:00
    dreamerlv3ex
        1
    dreamerlv3ex  
       2019-11-28 14:14:10 +08:00
    也许你需要看官方文档
    hereIsChen
        2
    hereIsChen  
       2019-11-28 16:21:06 +08:00   ❤️ 1
    返回值类型可以不声明
    maichael
        3
    maichael  
       2019-11-28 16:23:05 +08:00   ❤️ 1
    不需要。
    seki
        4
    seki  
       2019-11-28 16:23:13 +08:00   ❤️ 1
    可以不声明
    但是如果你的代码变得复杂的时候,声明返回类型有助于帮助你发现不一致的返回值
    love
        5
    love  
       2019-11-28 17:00:52 +08:00   ❤️ 1
    大牛们的开源代码基本是加的
    因为读代码时间比写多,而返回类型是接口的组成部分,没写的话还要脑子里运行一下里面的代码才知道返回类型
    当然函数体里的基本都不加的,那个是没必要
    hyyou2010
        6
    hyyou2010  
       2019-11-28 17:21:21 +08:00   ❤️ 1
    如果你添加返回值类型,比如 number,那么下次你改写程序并返回 string 就会报错,这不就见到效果了?
    cuzfinal
        7
    cuzfinal  
       2019-11-28 18:44:01 +08:00   ❤️ 1
    不需要
    gzf6
        8
    gzf6  
       2019-11-28 19:15:33 +08:00 via iPhone   ❤️ 1
    加吧,代替部分注释了
    wi
        9
    wi  
       2019-11-28 20:23:52 +08:00   ❤️ 1
    坚决不要,推导出来才是真实的,后面方法改动也是方便,除非你的返回值要做 as 处理,也不推荐只返回实际值的一个接口,要返回就返回真实的值。
    sneezry
        10
    sneezry  
       2019-11-28 23:12:21 +08:00 via iPhone   ❤️ 1
    推荐加,保持代码的可维护性。
    uxstone
        11
    uxstone  
       2019-11-28 23:33:23 +08:00   ❤️ 1
    业务代码基本靠推导解决, 而一些复杂的公用组件会写返回类型
    wunonglin
        12
    wunonglin  
       2019-11-28 23:35:54 +08:00   ❤️ 1
    标注返回类型是为了写 function 的时候避免 return 的东西和标注的不一致。
    hst001
        13
    hst001  
       2019-11-28 23:45:40 +08:00   ❤️ 2
    长函数,多人维护,历史一悠久都不知道会返回个什么东西,建议通通加上返回类型
    wi
        14
    wi  
       2019-11-29 20:47:13 +08:00   ❤️ 1
    可能有些人不明白,就算你不手动写返回类型,这个函数也是有返回类型的,不是说写了才有返回类型
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3213 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:34 · PVG 20:34 · LAX 04:34 · JFK 07:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.