рдпрд╣ рд╢рд╛рдпрдж рдПрдХ рдХреЛрдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрддреНрддрд░ рддреЛрдбрд╝ рд░рд╣рд╛ рд╣реИ:
module App
let test xss =
let f xss = xss |> List.choose (function Some a -> Some a | _ -> None)
xss |> f |> List.collect (fun xs -> [ for s in xs do yield s ])
[<EntryPoint>]
let main argv =
let res = test [ Some [ "a" ] ]
printfn "res: %A" res
0
рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐:
Seq.js:470
}, xs[Symbol.iterator]()));
^
TypeError: xs[Symbol.iterator] is not a function
рдореВрд▓ рд░реВрдк рд╕реЗ, рд╕рдорд╕реНрдпрд╛ xs
рдХрд╛ рд╕рд╣реА рдорд╛рди рдирд╣реАрдВ рд╣реИ, рд╕рд╣реА рдорд╛рди xs.value
рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рд╣реИред
рдзрд┐рдХреНрдХрд╛рд░ рд╣реИ, рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдкрд░рд┐рд╡рд░реНрддрди рдЕрдкреЗрдХреНрд╖рд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде рд╣реБрдЖ рдерд╛ред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдФрд░ рдЕрдзрд┐рдХ рдЖрд╢реНрдЪрд░реНрдп рдирд╣реАрдВ рд╣реИрдВ... рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдореИрдВ Fable рдореЗрдВ рдмрд╣реБрдд рд╕реЗ рдЕрд╕рд╛рдзрд╛рд░рдг рд╡реНрдпрд╡рд╣рд╛рд░реЛрдВ рдХрд╛ рдкрд░рд┐рдЪрдп рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реВрдБ ЁЯЩП
рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдФрд░ рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж @ncave!
@alfonsogarciacaro рдпрд╣ рджреБрдирд┐рдпрд╛ рдХреЛ рдПрдХ рдмреЗрд╣рддрд░ рдЬрдЧрд╣ рдмрдирд╛ рд░рд╣рд╛ рд╣реИ (рдПрдХ рдФрд░ рдЕрд╕рд╛рдзрд╛рд░рдг)ред рдзрдиреНрдпрд╡рд╛рдж!
@alfonsogarciacaro рд╣реБрд░реНрд░реЗ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛,
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
@alfonsogarciacaro рд╣реБрд░реНрд░реЗ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛,