你可以在函数的返回值上应用点运算符并从那里链接它吗?
例如
type Person = {
name: string
}
let getPerson =
let person = {name = "John Doe"}
person
sprintf "%s" getPerson().name
答案 0 :(得分:2)
你可以在函数的返回值上应用点运算符并从那里链接它吗?
取决于函数的返回值。在您的情况下,它是一种记录类型,答案是肯定的:您可以使用点语法访问其字段。
但是你的例子中有两个问题。 getPerson
是Person
记录值 - 不是返回 Person
记录的函数。在您的示例中,您只需添加一个单位参数即可使其成为函数:
let getPerson () =
let person = {name = "John Doe"}
person
你需要在括号中包含函数调用和点语法,以将其传递给sprintf
:
sprintf "%s" (getPerson().name)