• MDN笔记


    6 个 false

    false;
    undefined;
    null;
    0;
    (""); // 空字符串 ' '中间有空格的是true
    NaN; //  这个也是false
    

    不要混淆原始的布尔值和 Boolean 对象的真假

    留坑 相等比较时的隐式转换

    var b = new Boolean(false)
    if(b) // 真
    if(b==false) //true
    if(b==true) //假
    

    for...in 和 for...of 区别

    var ary = [3, 5, 7];
    ary.foo = "bar";
    // 此时的length还是3
    for (var i in ary) {
        console.log(i); //'0','1','2','foo'
    }
    for (var i of ary) {
        console.log(i); // 3, 5, 7
    }
    // for...of 的输出没有bar
    

    toFixed()

    var a = 123,
        b = a.toFixed(2);
    // b 123.00
    

    字符串

    str.indexOf(searchValue [, fromIndex])
    区分大小写,没找到返回-1
    数组也有这个方法
    
    str.startsWith(searchString[, position])
    
    str.endsWith(searchString[, length])
    // 这个要特别注意的是  第二个可选参数是length而不是索引
    const str1 = 'Cats are the best!';
    console.log(str1.endsWith('best', 17));
    // expected output: true
    
    str.includes(searchString[, position])
    
    
    slice
    str.slice(beginIndex[, endIndex])
    slice()不传参,就是复制一个字符串
    结束索引不写,就是到结束的位置
    开始的索引和结束的索引都可以是负数
    倒着数的第一个就是-1,第二个就是-2
    var str = 'The morning is upon us.';
    str.slice(-3);     // 返回 'us.'
    str.slice(-3, -1); // 返回 'us'
    str.slice(0, -1);  // 返回 'The morning is upon us'
    
    substr() `未来将可能会被移除掉`使用 substring() 替代它.
    str.substr(start[, length]) // 开始索引,想截取的字符数
    
    
    str.substring(indexStart[, indexEnd])
    // 和slice差不多。但是不可以取负数
    
    str.padEnd(targetLength [, padString])
    'abc'.padEnd(10);          // "abc       "
    'abc'.padEnd(10, "foo");   // "abcfoofoof"
    'abc'.padEnd(6, "123456"); // "abc123"
    'abc'.padEnd(1);           // "abc"
    
    padStart()
    'abc'.padStart(10);         // "       abc"
    'abc'.padStart(10, "foo");  // "foofoofabc"
    'abc'.padStart(6,"123465"); // "123abc"
    'abc'.padStart(8, "0");     // "00000abc"
    'abc'.padStart(1);          // "abc"
    
    str.repeat(count)
    count为0时,返回一个空字符串
    

    数组

    数组也有 slice 方法,用法和字符串的一样,属于选取,不会改变原数组

    但是数组还有一个 splice 方法,属于截取,会改变原数组

    toString()

    ary.toString()

    返回一个包含数组中所有元素的字符串,每个元素通过逗号分隔。

    对象的 key 可以是一个空字符串

    枚举对象 key 的几个方法的区别




    在 es5 之前,没有原生的方法枚举一个对象的所有属性。可以通过下面的函数完成

    function listAllProperties(o) {
        var objectToInspect;
        var result = [];
    
        for (
            objectToInspect = o;
            objectToInspect !== null;
            objectToInspect = Object.getPrototypeOf(objectToInspect)
        ) {
            result = result.concat(Object.getOwnPropertyNames(objectToInspect));
        }
    
        return result;
    }
    如果只想列出可访问的属性,那么只需要去除数组中的重复元素即可
    

    对象中的 key 设置为数字


    数字会转变成字符串

    其他

  • 相关阅读:
    【BZOJ1294】围豆豆(SCOI2009)-状压+BFS
    【BZOJ3244】树的计数(NOI2013)-概率期望+数学证明
    【BZOJ4826】影魔(AHOI&HNOI2017)-线段树+离线
    【BZOJ3832】Rally(POI2014)-拓扑排序+最长路+堆
    【BZOJ4556】字符串(TJOI&HEOI2016)-后缀数组+二分+RMQ+主席树
    【BZOJ1029】建筑抢修(JSOI2007)-贪心+堆
    【BZOJ1057】棋盘制作(ZJOI2007)-DP+悬线法
    【BZOJ1025】游戏(SCOI2009)-数论+背包DP
    java日期操作
    list类型for遍历
  • 原文地址:https://www.cnblogs.com/flyerya/p/13955840.html
Copyright © 2020-2023  润新知