以往Javascript与Java一样,通过JSDoc注释来注释提示函数方法中涉及的参数类型,例如,使用JSDoc的代码如下:
/** * @param {string} p1 - A string param. * @param {string=} p2 - An optional param (Closure syntax) * @param {string} [p3] - Another optional param (JSDoc syntax). * @param {string} [p4="test"] - An optional param with a default value * @return {string} This is the result */ function stringsStringStrings(p1, p2, p3, p4) { // TODO } |
这里涉及到p1,p2,p3,p4四个参数,其参数类型都是string的,这些说明都是在函数上方的JSDoc注释中说明的。
现在新的提议改进了,没有必要这么麻烦:
function stringsStringStrings(p1: string, p2?: string, p3?: string, p4 = "test"): string { // TODO } |
没有了冗长的注释,都压缩到函数方法的参数中了。
看来JS比Java要走得更快些。JS更加静态化了。
具体解释这里。