zoukankan      html  css  js  c++  java
  • arguments介绍(二)

    1.1 将参数从一个函数传递到另一个函数

    下面是将参数从一个函数传递到另一个函数的推荐做法。

    function foo() {
        bar.apply(this, arguments);
    }
    function bar(a, b, c) {
        // logic
    }

    2. ES6 中的 arguments

    2.1 扩展操作符

    function func() {
        console.log(...arguments);
    }
    
    func(1, 2, 3);

    执行结果是:

    1 2 3

    2.2 Rest 参数

    function func(firstArg, ...restArgs) {
        console.log(Array.isArray(restArgs));
        console.log(firstArg, restArgs);
    }
    
    func(1, 2, 3);
    true
    1 [2, 3]

    2.3 默认参数

    function func(firstArg = 0, secondArg = 1) {
        console.log(arguments[0], arguments[1]);
        console.log(firstArg, secondArg);
    }
    
    func(99);
    99 undefined
    99 1

    可见,默认参数对 arguments 没有影响,arguments 还是仅仅表示调用函数时所传入的所有参数。

    2.4 arguments 转数组

    Array.from() 是个非常推荐的方法,其可以将所有类数组对象转换成数组。

  • 相关阅读:
    C++---const
    qt--textEdit多行文本编辑框
    qt--QByteArray字节数组
    qt5--拖放
    qt5--自定义事件与事件的发送
    qt5--键盘事件
    qt5--鼠标事件
    qt5-事件过滤器
    qt5-event事件的传递
    qt-事件的接受和忽略
  • 原文地址:https://www.cnblogs.com/xuzhudong/p/10255317.html
Copyright © 2011-2022 走看看