• 第一节:arguments。


    话说,今天去贷款多面试了,结果很悲惨。不过呐,也学到了很多的东西,就像出来和我说的一句话,基础知识很重要。看来得好好总结积累了。请大家监督。哈哈

    好啦,进入正题了,来arguments搞起。

    1:arguments是什么?答:arguments就是一个函数中的局部变量,通过它你可以获得传递给这个函数的所有的参数

    2:arguments有什么特点?答:他是一个类数组,什么是类数组?就是可以通过下标来访问,也有长度,但是不能有数组的其他方法。

    3:使用arguments有什么主意事项?答:首先根据v8引擎的说法,我们最好只访问他的长度,或者arguments【num】进行访问,不能进行赋值了等一系列的操作。

    4:arguments如何转换为数组?答:可以用slice方法 如下:

    let args = [].slice.call(arguments);但是这种方法在v8引擎里边不被推荐,可能会阻止v8引擎的优化参考:https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments。
    

    5:推荐的方法:

    let args = (
    arguments.length === 1 ? 
    [arguments[0]] : 
    Array.apply(null, arguments)
    );
    
    或者
    
    let len=arguments.length;
    arg = new Array(len);
    for(let i=0;i<len;i++){
      arg[i] = arguments[i];  
    }
    

      

     

  • 相关阅读:
    Document
    Document
    Document
    Document
    Document
    Document
    Document
    Document
    C#中的委托是什么
    C# Lambda表达式Contains方法 like
  • 原文地址:https://www.cnblogs.com/hjdjs/p/7252978.html
Copyright © 2020-2023  润新知