javascript算术运算符有哪些,js 扩展操作符

  javascript算术运算符有哪些,js 扩展操作符

  个人对…常用方法的理解

  …作为扩展运算符

  这里的扩展指的是数组或字符串或伪数组的扩展(即类似于数组的数据,可以取出每一个带下标的项,具有总长度属性,以下简称遍历对象),意思是取出数组中的每一项,用分隔(使用时是这样,单独打印的话用空格分隔)。

  …可以扩展一维数组,就是只能去掉最外层的[];他的结果是数组被去掉了[]的结果,不是字符串也不是数组什么的。所以按照它逗号分隔的方式,可以作为函数的形参传递,也可以用另一个[]包住,作为函数作为数组的返回,但不能直接返回。可以通过控制台输出。脚本

  让arr=[

  5,

  str ,

  [1,2,3],

  [你好,世界],

  ];

  函数fn(arr){

  console.log(.arr);

  返回[.arr]

  }

  函数fo(.arr){

  console . log(arr);

  }

  //函数foo(arr){

  //返回.arr//应为表达式。

  //}

  console . log(fn(arr));//5 str (3) [1,2,3] (2) [hello , world]

  //(4) [5, str ,数组(3),数组(2)]

  //去掉外面的[],不去掉[1,2,3],[hello , world]里面的[]。

  /script

…作为剩余运算符

  余数运算符的意思是我不知道这个参数总共有多少个。我用…来表示余数。同样,它只适用于数组。而且这两种方法得到的结果是一个数组,而不是数组减[]。主要有两种方法:第一种:所有的参数都是未知的,所以不知道要传递多少。第二种:有一个或多个已知参数,其余参数未知。//第一种类型的所有参数都是未知函数aa(.arr){

  console . log(arr);} AA (5, SSS ,22)//(3) [5, SSS ,22]=结果是一个数组//第二个,有两个已知参数的函数ff(a,b,arr){

  Console.log (arr)} ff (2,3, str , 111)//(2) [str , 111]=结果是一个数组

特性其他应用:

  

分解字符串

  您可以使用str.split()或

  

伪数组转换为真数组

  既然他可以通过移除数组中的[]来显示可遍历对象,并且他可以用于伪数组,那么就很好理解了,使用伪数组后,对伪数组的形式进行了变换,然后在其中添加了[],也就是说可以调用真数组的方法。=[…arr。]

  

浅拷贝

  由于它对可遍历的对象使用循环,所以不会改变原始数组,而是执行浅层克隆操作,因此可用于数组的浅层复制。=[…arr]

  

数组扁平化

  脚本

  //简单二维数组(内部有另一个数组的数组=二维)

  让arr=[

  5,

  str ,

  [1,2,3],

  [你好,世界],

  ];

  //三维数组(一个数组内部有一个数组,另一个数组内部有一个数组)

  让arr1=[

  5,

  str ,

  [

  1,2,3,

  [ccc , dddd]

  ],

  [你好,世界],

  ];

  函数扁平化(arr){

  return []。串联(.arr);

  }

  函数flatten1(arr){

  return []。串联(.arr.map(x=Array.isArray(x)?flatten 1(x):x));

  }

  console . log(flatten(arr));//(7) [5, str ,1,2,3, hello , world]

  console . log(flatten 1(arr));//(7) [5, str ,1,2,3, hello , world]

  console . log(flatten(arr 1));//(8) [5, str ,1,2,3,Array(2), hello , world]

  console . log(flatten 1(arr 1));//(9) [5, str ,1,2,3, ccc , dddd , hello , world]

  /script从上面可以看出,当数组结构非常简单(二维)时,扩展运算符可以求解里面的数组,使用concat进行拼接。但是当数组是多维的时候,就无法求解更深层次的数组,只能用扩张算子和递归来实现。

  这就是常用方法的细节.JavaScript中的扩展运算符。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: