8.泛型.js 872 B

1234567891011121314151617181920212223242526272829303132
  1. "use strict";
  2. (function () {
  3. // function fn1(name:string):string {
  4. // return name;
  5. // }
  6. // function fn2(name:any):any {
  7. // return name;
  8. // }
  9. // 泛型:先用字符去指代未知类型 使用时传入具体类型
  10. function fn3(name) {
  11. return name;
  12. }
  13. fn3(12); //若传入时 未直接指出类型 则ts默认解析传入类型
  14. fn3("12"); // 若传入是 直接指出类型 将类型写在<>内
  15. // 传入多个值
  16. function fn4(a, b) {
  17. return [a, b];
  18. }
  19. fn4("11", true);
  20. // 若函数中泛型继承接口 则传入的值必须符合接口条件
  21. function fn5(a) {
  22. return a;
  23. }
  24. fn5({ jump: "0" });
  25. class Ending {
  26. constructor(name) {
  27. this.name = name;
  28. }
  29. }
  30. let end = new Ending({ jump: "唐僧啊" });
  31. console.log(end);
  32. })();