zoukankan      html  css  js  c++  java
  • 实用的javascript 简写--读后感~

    看完这个文章后, 记录一些自己用过的。。。更新中....  

    原文链接

    1.三元操作符

      当你要写if..else 语句的时候可以使用三元操作符代替

    let num=100;
    const result;
    if(num > 50){
        result = "我比50大";
    }else{
      result = "  我有可能等于50哦 ";
    }
    

      简写:

    let num=100;
    const result=num>50?"我比50大":"我可能等于50哦";

    2.短路求值简写

      当给一个变量分配另一个值的时候,想要确定原始值不是null,undefined,空值,可以写个多重条件的if语句

    if(val1 !== null || val1 !== undefined || val1 !== ''){
      let var2=val1;  
    }
    

      简写: 

    let val2=val1||'其它值'
    

    3.声明变量简写法

    let a=1;
    let b=2;
    let c=3;
    

      简写:

    let a=1,b=2,c=3;
    

    4. if 判断为真的简写法

    if(aa=true){
      ....code  
    }
    

      简写:

    if(aa){
      ... code  
    }

      同理:判断不为真

    if(!a){
       ... code
    
    }
    

    5.循环的简写方式

    for(var i=0;i<arr.length;i++){
       ... code
    }

      简写:

    for(let index in arr){
      ... code  
    }
    

      也可用 arr.forEach();

    arr.forEach(function(element,index,arr){
      elelment=="当前元素";
      index=="当前元素索引";
      arr=="数组本身"
    });

     6.短路评价

      给一个变量分配的值通过 判断是否Null 或undifined等

        PS. 我觉得这个和第2个 有点重复了,有大神能解释下吗

    let ss;
    if(data.aa){
      ss==data.aa  
    }else{
      ss == 'default'  
    }
    

      简写:

    let ss=data.aa || 'default'
    

     7. 对象属性简写

      如果对象属性和 Key 相同,则可以用ES6的语法来写

    let json={xx:xx,bb:bb};
    

      简写:  

    let json={xx,bb}
    

     8. 箭头函数

    function sayHello(name){
      console.log(name);  
    }
    setTimeout(function(){
        console.log(1);
    },2000);
    arr.forEach(function(item){
      console.log(item);
    });

      简写:

     

    sayHello=name=>(console.log(name));
    setTimeout(()=>console.log(1),2000);
    arr.forEach(item=>console.log(item));

     9. 隐式返回简写

    function rFn(num){
        return Math.floor(num);
    }
    var vFn=function(){return {a:1}}
    

      简写:

    rFn=num=>(return Math.floor(num));
    var vFn=()>=(return {a:1})

     10. 定义多个变量 

    var a=1,b=2,c=3;
    

      简写:

    let [a,b,c]=[1,2,3]
    

      

    未完待续....

  • 相关阅读:

    双向链表和环形链表(约瑟夫问题)
    单向链表的增删查改
    稀疏数组与环形数组
    离焦事件。这个坑谁抗的住呀,好无语呀
    maven
    maven工程运行出Unable to compile class for JSP: 错误
    笔记-JavaWeb学习之旅19
    获取redis cluster master对应的slot分布情况
    批量获取mysql数据库实例指定参数的值
  • 原文地址:https://www.cnblogs.com/xuhongli/p/7080023.html
Copyright © 2011-2022 走看看