请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师你好,add1类型是Object、object、Function的时候都可以将sum进行赋值是为什么呢

老师你好,add1类型是Object、object、Function的时候都可以将sum进行赋值是为什么呢
图片描述
图片描述
图片描述
但是换成function的时候就报错
图片描述

正在回答 回答被采纳积分+3

1回答

张轩 2022-07-27 09:30:41

同学你好

因为js 的所有对象都是基于 Object 基类的,Function 类型也是 Object 子类,所以是可以通过的。

第二个 object,不是 Object 构造函数,而是一个特殊类型,用的不多,文档在这里https://www.typescriptlang.org/docs/handbook/basic-types.html#object

指的是:

object is a type that represents the non-primitive type, i.e. anything that is not numberstringbooleanbigintsymbolnull, or undefined.

不是 non-primitive 所有类型的集合,这里也是满足的。

第三个 你这里拼错了,应该是想写 function,但是你写了就知道是没有 function 这个类型的,function 只有大写的 Function 代表一个函数,是不存在小写的 function 类型的。

0 回复 有任何疑惑可以回复我~
  • 提问者 weixin_慕少3376000 #1
    好的,谢谢老师,还想再问一个问题,如果Function、Object和object都可以的话,那规定类型的时候推荐这样写吗,感觉Object有点像any一样了
    回复 有任何疑惑可以回复我~ 2022-07-29 09:10:08
  • 张轩 回复 提问者 weixin_慕少3376000 #2
    不推荐 这个 Object 类型很少使用的,在后面的代码中我们也遇不到
    回复 有任何疑惑可以回复我~ 2022-07-29 09:23:07
  • 提问者 weixin_慕少3376000 回复 张轩 #3
    好的,谢谢老师
    回复 有任何疑惑可以回复我~ 2022-07-29 09:26:11
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信