diff options
Diffstat (limited to 'doc/docs/zh')
| -rwxr-xr-x | doc/docs/zh/doc/README.md | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/doc/docs/zh/doc/README.md b/doc/docs/zh/doc/README.md index 0aea3d5..5cfe4e6 100755 --- a/doc/docs/zh/doc/README.md +++ b/doc/docs/zh/doc/README.md | |||
| @@ -2121,6 +2121,54 @@ f2 arg1, arg2 | |||
| 2121 | </pre> | 2121 | </pre> |
| 2122 | </YueDisplay> | 2122 | </YueDisplay> |
| 2123 | 2123 | ||
| 2124 | ### 前置返回表达式 | ||
| 2125 | |||
| 2126 | 在深度嵌套的函数体中,为了提升返回值的可读性及编写便利性,我们新增了 “前置返回表达式” 语法。其形式如下: | ||
| 2127 | |||
| 2128 | ```moon | ||
| 2129 | findFirstEven = (list): nil -> | ||
| 2130 | for item in *list | ||
| 2131 | if type(item) == "table" | ||
| 2132 | for sub in *item | ||
| 2133 | if sub % 2 == 0 | ||
| 2134 | return sub | ||
| 2135 | ``` | ||
| 2136 | <YueDisplay> | ||
| 2137 | <pre> | ||
| 2138 | findFirstEven = (list): nil -> | ||
| 2139 | for item in *list | ||
| 2140 | if type(item) == "table" | ||
| 2141 | for sub in *item | ||
| 2142 | if sub % 2 == 0 | ||
| 2143 | return sub | ||
| 2144 | </pre> | ||
| 2145 | </YueDisplay> | ||
| 2146 | |||
| 2147 | 这个写法等价于: | ||
| 2148 | |||
| 2149 | ```moon | ||
| 2150 | findFirstEven = (list) -> | ||
| 2151 | for item in *list | ||
| 2152 | if type(item) == "table" | ||
| 2153 | for sub in *item | ||
| 2154 | if sub % 2 == 0 | ||
| 2155 | return sub | ||
| 2156 | nil | ||
| 2157 | ``` | ||
| 2158 | <YueDisplay> | ||
| 2159 | <pre> | ||
| 2160 | findFirstEven = (list) -> | ||
| 2161 | for item in *list | ||
| 2162 | if type(item) == "table" | ||
| 2163 | for sub in *item | ||
| 2164 | if sub % 2 == 0 | ||
| 2165 | return sub | ||
| 2166 | nil | ||
| 2167 | </pre> | ||
| 2168 | </YueDisplay> | ||
| 2169 | |||
| 2170 | 唯一的区别在于:你可以将函数的返回值表达式提前写在 `->` 或 `=>` 前,用以指示该函数应隐式返回该表达式的值。这样即使在多层循环或条件判断的场景下,也无需编写尾行悬挂的返回表达式,逻辑结构会更加直观清晰。 | ||
| 2171 | |||
| 2124 | ## 反向回调 | 2172 | ## 反向回调 |
| 2125 | 2173 | ||
| 2126 | 反向回调用于减少函数回调的嵌套。它们使用指向左侧的箭头,并且默认会被定义为传入后续函数调用的最后一个参数。它的语法大部分与常规箭头函数相同,只是它指向另一方向,并且后续的函数体不需要进行缩进。 | 2174 | 反向回调用于减少函数回调的嵌套。它们使用指向左侧的箭头,并且默认会被定义为传入后续函数调用的最后一个参数。它的语法大部分与常规箭头函数相同,只是它指向另一方向,并且后续的函数体不需要进行缩进。 |
