美文网首页
记几个自己常混淆的方法

记几个自己常混淆的方法

作者: shanshanfei | 来源:发表于2018-04-28 16:41 被阅读0次
    Array.splice(index, deletemItemCount, someItemWillInsert);
    //集删除、添加于一体的数组操作函数
    
    Array.slice(start, end);
    //可以是负数,表示倒着数,-1表示倒数第一个值,且 start 要小于等于 end。
    
    String.slice(start, end);//同上 
    
    String.substr(start, length);//函数名小写 ,start可以是负数
    
    String.substring(start, end);
    //小写,两个参数都不接受负数,
    //返回从start到不包含end的字符串,如果start大于end 会自动交换位置
    
    
    
    ============
    js数组遍历常用方法:
    [...].some(v => v > 10); 只要数组中的一项满足条件即返回 true
    [...].every(v => v > 10); 数组中的每一项都满足条件即返回 true
    [...].forEach(v => {...some operation}); 遍历数组进行一些操作 无法break中断循环
    [...].map(v => v*2); 对数组每一项进行操作 返回值组成新的数组
    [...].filter(v => v>2); 对数组每一项进行判断 满足条件的值组成新的数组
    [...].reduce((preVal, curVal) => preVal+curVal); 从左到右对数组累计求值
    [...].reduceRight((preVal, curVal) => preVal+curVal); 从右到左对数组累计求值
    
    
    
    ============
    for...in for...of区别:
    都可以遍历数组和对象,但是会存在一些问题
    1、for...in是ES5的用法,for...of是ES6的用法
    2、for...in一般用来遍历对象,for...of一般用来遍历数组
    3、for...in遍历出来的是key,for...of遍历出来的是value
    4、for...in会把原型上的属性和方法也遍历出来,for...of只会遍历自身值
    5、for...of可以配合break、return、continue一起使用
    
    见实例:
    Array.prototype.method = function(){}
    var arr = [4, 5, 6];
    arr.name = 'hello'
    
    for(var index in arr){
        console.log(index);//0 1 2 method name 
        //原型属性、以及自定义的属性都会遍历出来 所以for...in适合遍历对象 
        //结合Object.hasOwnProperty来判断是否是实例属性
    }
    
    for(var value of arr){
        console.log(value);//4, 5, 6 只返回值
    }
    
    var obj = {a: 1, b: 2};
    for(var key of Object.keys(obj)){
        console.log(obj[key]);//借助于 Object.keys在使用for...of即可实现对象的遍历
    }

    相关文章

      网友评论

          本文标题:记几个自己常混淆的方法

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