• TypeScript入门知识三(函数新特性)


    一,Rest and Spread操作符:

      用来声明任意数量的方法参数也就是“...”操作符

    输出结果:

      18

      jajj

      89

      function test (a, b, c) {

        console.log(a);

        console.log(b);

        console.log(c);

      }

      var agrs = [1, 2];
      test(...agrs);

      输出结果:

      1

      2

      undefind

      var agrs = [4,5,6,7,8,9];

      test(...agrs);

      输出结果:

      4

      5

      6

      根据定义的参数取传入的参数

    二,generator函数;

      控制函数的执行过程,手工暂停和恢复代码执行

      在TypeScript的编辑器中不支持这个语法,需要在babeljs的编辑器中联系(http://babeljs.cn)

      function* doSomething () {

        console.log("start");

        yield;

        console.log("end");

      }

      //调用generator函数,必须赋值给一个变量

      var func1 = doSomething();

      //通过next()来调用

      func1.next();

      func1.next();

    三.destructuring析构表达式

      通过表达式将对象或者数组拆解成任意数量的变量。

      function getStock() {
        return{
        code: "IBM",
        price:100
        }
      }
      var { code, price } = getStock(); //但是变量的命名和字段必须一样

      var {code: codeX,  price} = getStock;//当你定义的变量与对象的变量不一样时

      console.log(code);
      console.log(price);

      输出结果:

      “IBM”

      100

      当对象中的字段是一个对象

      function getStock() {
        return{
        code: "IBM",
        price:{

           price1: 100,

           price2:  120

          }

        }
      }

      var { code,price:{price2}} = getStock();

      数组用析构表达式 

      var array1 = [1, 2, 3];
      var [ , num1, num2] = array1;
      console.log(num1);
      console.log(num2);

      输出结果:

      2

      3

      var array1 = [1, 2, 3];
      function doSomething([num1,num2,...others]) {
        console.log(num1);
        console.log(num2);
        console.log(others);
      }
      doSomething(array1);

      输出结果:

      1

      2

      [3]

      有点主要是根据对象或者数组初始化一些变量,可以写更少的代码;

      

      

      

      

    每一步都是一个深刻的脚印
  • 相关阅读:
    解决response在controller返回乱码的解决方式
    Injection of autowired dependencies failed;错误解决
    sql mybatis 使用concat乱码
    【算法基础】欧几里得gcd求最大公约数
    sql视图和表的区别
    在idea下创建maven
    Arrays.sort()自定义排序
    数组
    java 遍历数组
    抽象与接口
  • 原文地址:https://www.cnblogs.com/chzlh/p/7512744.html
Copyright © 2020-2023  润新知