js简洁的方法和写法

过滤错误

如果想过滤数组中的false、0、null、undefined等值,可以这样
const array = [1, 0, undefined, 2, ' ', false];
array.filter(Boolean);
// [1, 2]

使用逻辑运算符

if(a>1){
  fun()
}
//可以写成
a>1 && fun()

if判断简化

if(a === undefined || a === 1|| a === null) {
  b=10   //fun()
  return
}
//可以写成
if([undefined, 1, null].includes(a)) {
  b=10   //fun()
  return  
}
// 判断里面只有return和一行数据------可以写成 
if([undefined, 1, null].includes(a)) b=10//fun()

一些对象验证,初始到不到值,又怕报错

const obj= {
    a: {
      b: {
        c: {
          d: 10
      }
    }
  }
}
//避免某一层级不存在导致报错
a && a.b && a.b.c && a.b.c.d
// 可选链运算符
a?.b?.c?.d

验证undefined和null

if(a === null || a === undefined) {
    fun()
}
//可以写成
a ?? fun()

数字一些操作简便

var a = '10'
+a   //变成数字类型


//变成整数
~~1.1   或者 1.11 | 0  -1.11 | 0   //1 1 -1
//如果是数字类型的字符串,就会转化为纯数字;
//如果字符串包含数字之外的值,就会转化为0;
//如果是布尔类型,true会返回1,false会返回0

// 获取数组最后一个元素

var arr = [1,2,3]
arr[arr.length - 1] 或者 arr.slice(-1)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。