TypeScript 学习2-数据类型、函数

深藏阁楼爱情的钟 2023-03-04 03:27 99阅读 0赞
  1. //字符串类型
  2. let str:string; //只能接收字符串类型
  3. str="你好 Ts"
  4. // str=true //错误写法
  5. //console.log(str);
  6. //布尔类型(boolean) true false
  7. //var flag:boolean=true
  8. // flag="aaa" //错误写法
  9. //flag=false
  10. //console.log(flag);
  11. //数字类型 number 它对浮点型和整型没有进行区分,都叫数字类型
  12. //var a:number=123
  13. //a=12.3
  14. //console.log(a)
  15. //数组类型(arry) ts定义数组有两种方式
  16. //第一种定义数组的方式
  17. // let arr:number[]=[1,2,3]
  18. // console.log(arr)
  19. // let strs:string[]=["aa","bb","vv"]
  20. // console.log(strs)
  21. //第二种定义数组的方式
  22. // let arr2:Array<number>=[1,2,355]
  23. // console.log(arr2)
  24. //第三种定义数组的方式
  25. let arr3:any[]=['aasda',2,355,true]
  26. console.log(arr3);
  27. //元组类型(tuple)属于数组的一种
  28. //let arr:[number,string,boolean]=[1,"a",true]
  29. //console.log(arr)
  30. //
  31. //枚举类型
  32. //enum 枚举名{
  33. // 标识符[=整型常数],
  34. // 标识符[=整型常数],
  35. // ...
  36. // 标识符[=整型常数]
  37. // }
  38. //enum Flag{success=1,error=2}
  39. //console.log(Flag.success);
  40. //如果枚举标识符没有指定值,默认值是索引
  41. //enum Color{red,blue,orange}
  42. //console.log(Color.orange); //值为2
  43. //如果枚举标识符中间一个指定有值
  44. //enum Color{red,blue=5,orange}
  45. //console.log(Color.red); //值为0
  46. //console.log(Color.blue); //值为5
  47. //console.log(Color.orange); //值为6 在指定有值的后面
  48. //定义没有赋值就是undefined
  49. //var num:number | undefined
  50. //console.log(num)
  51. //一个元素可能是number 类型 可能是undefined 可能是null
  52. //var num:number | undefined | null
  53. //console.log(num)
  54. // void 表示方法没有返回任何类型
  55. /* function run():void{
  56. console.log('run')
  57. }
  58. run(); */
  59. //3.1 匿名函数
  60. var fun=function():number{
  61. console.log('run')
  62. return 123;
  63. }
  64. //3.2方法可选传参 ?可选参数
  65. /* function getInfo(name:string,age?:number):string{
  66. console.log('run')
  67. if(age){
  68. return '${name}---${age}'
  69. }else{
  70. return '${name}---年龄保密'
  71. }
  72. } */
  73. //注意: 可选惨必须配置到参数的后面
  74. //错误写法 function getInfo(name?:string,age:number):string{
  75. //alert(getInfo('张三',20))
  76. //alert(getInfo('张三'))
  77. //3.3 默认参数 注意默认参数必须配置到参数的后面
  78. // es5里面没办法设置默认参数,es6和ts中都可以设置默认参数
  79. /* function getInfo(name:string,age:number=20):string{
  80. console.log('run')
  81. if(age){
  82. return '${name}---${age}'
  83. }else{
  84. return '${name}---年龄保密'
  85. }
  86. }
  87. alert(getInfo('张三'));
  88. alert(getInfo('张三',30)); */
  89. // 3.4 三点运算符 接受新参传过来的值
  90. /* function sum(...result:number[]):number{
  91. var sum=0;
  92. for (let index = 0; index < result.length; index++) {
  93. sum+= result[index];
  94. }
  95. return sum;
  96. }
  97. alert(sum(1,2,3,4)) */
  98. //ts函数重载
  99. // java中方法的重载,重载指的是两个或者两个以上的同名函数,但是他们的参数不一样,这时会出现函数重载的情况
  100. /* function getInfo(name :string):string;
  101. function getInfo(name:string , age :number):string;
  102. function getInfo(name : any , age? : any ) :any{
  103. if(age){
  104. return ' 我叫'+name+' 我的年龄是'+age;
  105. }else{
  106. return ' 我叫' +name;
  107. }
  108. }
  109. alert(getInfo('zs',20)) */
  110. //箭头函数 es6
  111. // this 指向的问题 箭头函数的this指向上下文
  112. setTimeout(()=>{
  113. alert('run')
  114. },1000)

发表评论

表情:
评论列表 (有 0 条评论,99人围观)

还没有评论,来说两句吧...

相关阅读