美文网首页
js忍者之路

js忍者之路

作者: 在下高姓 | 来源:发表于2020-12-23 16:42 被阅读0次
    1. 全部替换
      我们都知道 string.Replace() 函数仅能替换掉第一个匹配项。
      你可以通过在正则表达式的末尾添加 /g 来替换所有出现的内容。
    var example = "potato potato";
    console.log(example.replace(/pot/, "tom")); 
    // "tomato potato"
    console.log(example.replace(/pot/g, "tom")); 
    // "tomato tomato"
    
    1. 提取唯一值
      通过使用 Set 对象和 ... 运算符能够使用唯一值创建一个新数组。
    var entries = [1, 2, 2, 3, 4, 5, 6, 6, 7, 7, 8, 4, 2, 1]
    var unique_entries = [...new Set(entries)];
    console.log(unique_entries);
    // [1, 2, 3, 4, 5, 6, 7, 8]
    
    1. 将数字转换为字符串
      只需要用 + 运算符带和一个空字符串即可。
    var converted_number = 5 + "";
    console.log(converted_number);
    // 5
    console.log(typeof converted_number); 
    // string
    

    4.将字符串转换为数字
    只需要用 + 运算符即可。但是要注意:它仅适用于“字符串数字”。

    the_string = "123";
    console.log(+the_string);
    // 123the_string = "hello";
    console.log(+the_string);
    // NaN
    
    1. 随机排列数组中的元素
      这样最适合洗牌了:
    var my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9];
    console.log(my_list.sort(function() {
        return Math.random() - 0.5
    })); 
    // [4, 8, 2, 9, 1, 3, 6, 5, 7]
    
    1. 展平多维数组
      只需使用 ... 运算符。
    var entries = [1, [2, 5], [6, 7], 9];
    var flat_entries = [].concat(...entries); 
    // [1, 2, 5, 6, 7, 9]
    
    1. 条件短路
      只需要举个例子就明白了:
    if (available) {
        addToCart();
    }
    
    通过简单地使用变量和函数来简化代码:
    
    available && addToCart()
    
    1. 动态属性名
      一直以来,我以为必须先声明一个对象,然后才能分配动态属性,但是...
    const dynamic = 'flavour';
    var item = {
        name: 'Coke',
        [dynamic]: 'Cherry'
    }
    console.log(item); 
    // { name: "Coke", flavour: "Cherry" }
    
    1. 用 length 调整货清空数组
      如果要调整数组的大小:
    var entries = [1, 2, 3, 4, 5, 6, 7];  
    console.log(entries.length); 
    // 7  
    entries.length = 4;  
    console.log(entries.length); 
    // 4  
    console.log(entries); 
    // [1, 2, 3, 4]
    如果要清空数组:
    
    var entries = [1, 2, 3, 4, 5, 6, 7]; 
    console.log(entries.length); 
    // 7  
    entries.length = 0;   
    console.log(entries.length); 
    // 0 
    console.log(entries); 
    // []
    

    相关文章

      网友评论

          本文标题:js忍者之路

          本文链接:https://www.haomeiwen.com/subject/alhunktx.html