js_coding

 

这里_list里面的内容是重复的,如果稍微调试一下就会很明白,但是还是容易掉进这个陷阱~~

let _list=[],_obj;
dataList.map(function(option){
    _obj.name=option.sname;//会修改已经插入_list的数据
    _obj.value=option.svalue;//同上
    _list.push(_obj)
})

  

修改后的代码

let _list=[],_obj;
dataList.map(function(option){
    _obj = new Object();
    _obj.name=option.sname;
    _obj.value=option.svalue;
    _list.push(_obj)
})

 

js_循环

continue;//跳出当前循环,上一层循环(如果存在)不受影响;

return;//必须在函数中执行,无论返回结果(true/false/...),函数结束。与循环语句无关,如果循环语句在函数之内,循环结束

注意:js数组原生forEach和jq对象的each语句中(原理是一致的) return;不能跳出循环!!

  arr.forEach(function(e,index,array){

    index==1 && (return;) //这里return相当于continue,函数执行结束,但是数组遍历继续执行

  })

  同理jq的each;

   $.each(obj/arr, function(k,v){

    k=='a' && (return;) //同上

  })

 

js_快排

function quicksort (arr){
    if(arr.length<=1){
        return arr;
    }
    var left = [];
    var right = [];
    var middle = arr[0];
    for(var i=1;i<arr.length;i++){
        if(arr[i]<middle){
            left.push(arr[i]);
        }else{
            right.push(arr[i]);
        }
    }
    return quicksort(left).concat([middle],quicksort(right));
}

 

转载于:https://www.cnblogs.com/amusic/p/6485577.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值