请选择 进入手机版 | 继续访问电脑版
创作

实用的JS技巧(一)

JavaScript  / 倒序浏览   © 著作权归作者本人所有

#楼主# 2020-6-18

跳转到指定楼层
  (一)  将 arguments 对象转换为数组
  • 对象是函数内部可访问的类似数组的对象,其中包含传递给该函数的参数的值。
  • 与其他数组不同,这里我们可以访问值并获得长度(length),但是不能在其上使用其他数组方法。
  • 幸运的是,我们可以将其转换为常规数组
    1. let argArray = Array.prototype.slice.call(arguments);
    复制代码

  (二)  数组求和

  • 我一开始想到的是使用一个循环,但是那样会很浪费。
  1. let numbers = [3, 5, 7, 2];
  2. let sum = numbers.reduce((x, y) => x + y);
  3. console.log(sum); // returns 17
复制代码
   
   (三)  条件短路

  • 假如我们有以下代码
  1. if (hungry) {
  2.     goToFridge();
  3. }
复制代码
  • 进一步优化与简写


  1. hungry && goToFridge()
复制代码
   虽然只是简单的优化一下,但是逼格上来了有木有?

   (四)  对条件使用或(OR)逻辑
  • 相信大家以前有过这种操作:在函数开始时声明变量,只是为了避免在出现意外错误时遇到 undefined
  1. function doSomething(arg1){
  2.      arg1 = arg1 || 32;   // 如果尚未设置 arg1的默认值会是32
  3. }
复制代码


(五)逗号运算符


  • 逗号运算符(,)用来计算其每个操作数(从左到右)并返回最后一个操作数的值。
  1. let x = 1;
  2. x = (x++, x);
  3. console.log(x);
  4. // 预期输出: 2
  5. x = (2, 3);
  6. console.log(x);
  7. // 预期输出 3
复制代码


转播转播 分享分享 分享淘帖 反对反对
回复

使用道具

成为第一个回答人

B Color Link Quote Code Smilies
站点地图|手机版|WEB明教光明顶 |湘ICP备19021820号-1
Powered by WEB明教  © 2017-2020 Starsoft.
返回顶部