typescript - TypeScript 箭头函数作为类返回问题中另一个函数中的返回
问题描述
看看这段代码。当我查看控制台时,我有这样的事情:
() => {
return this.msg;
}
老实说,它对我来说是有线的。还有一件事。当我更改为 console.log(this.msg) 返回 this.msg 时,控制台中没有发生任何事情。我做错了什么?
class Problemo {
msg: string = "hello"
printFunction() {
var vv = () => {
return this.msg
}
return vv
}
}
var pp = new Problemo()
var xx = pp.printFunction()
console.log(xx)
@解决方案。
我忘了括号 console.log(xx())
解决方案
您的printFunction
方法声明了一个在调用时vv
将打印的函数this.msg
,因此 的值pp.printFunction()
将是一个函数,您将其分配给xx
并记录到控制台。这就是为什么您会看到函数的来源:
console.log(xx) // outputs: () => { return this.msg; }
如果您xx
改为调用,您将看到以下消息:
console.log(xx()) // outputs: "hello"
推荐阅读
- google-sheets - 计算Google表格中一定范围内素数数量的公式
- amazon-dynamodb - DynamoDB - 全局表冲突解决
- c# - RSACng 无法验证哈希
- c - 非阻塞连接不向 kqueue 报告完成
- c++ - 如何将枚举类型向量的向量保存在
- r - 包 'ggbiplot' 不可用(对于 R 版本 3.5.3)?
- react-native - 在调用函数 React-Native 上保存 textInputs 的值
- javascript - 将日期和时间保存为按钮的值
- django - Rest API 参数为空 Serializer 没有模型
- php - 如何在 Symfony/Doctrine 中为 FileType 的输入设置默认值?