• 从js对象数组中删除某一个对象


    这里先引用一下如下地址的内容

    https://www.cnblogs.com/LoveQin/p/8663006.html

    因为有需要删除对象数组中的某个对象,所以在网上查到这篇文章,用到了最后一段

    /*删除数组中的某一个对象
    _arr:数组
    _obj:需删除的对象
    */
    function removeAaary(_arr, _obj) {
        var length = _arr.length;
        for (var i = 0; i < length; i++) {
            if (_arr[i] == _obj) {
                if (i == 0) {
                    _arr.shift(); //删除并返回数组的第一个元素
                    return _arr;
                }
                else if (i == length - 1) {
                    _arr.pop();  //删除并返回数组的最后一个元素
                    return _arr;
                }
                else {
                    _arr.splice(i, 1); //删除下标为i的元素
                    return _arr;
                }
            }
        }
    }
    但是执行调试后发现,当对象内容明明匹配的时候,调试并没有进入if语句,即当对象内容一样时(_arr[i]==_obj)没有起作用,之后想起来js对象之间是不能直接==进行比较的,可以将两个对象JSON.stringify()再进行比较,所以if
    (_arr[i]==_obj)要改为if (JSON.stringify(_arr[i]) == JSON.stringify(_obj)) {才能进行比较。
    特此记录一下,总是出这样的低级错误!
  • 相关阅读:
    静态主席树
    uva 11107 Life Forms
    codeforce 605B. Lazy Student
    codeforce 606B Testing Robots
    codeforce 606C
    codeforce 606A
    uva 11019 Matrix Matcher
    uva 11468 Substring
    uvalive 4670 Dominating Patterns
    codeforce 603B
  • 原文地址:https://www.cnblogs.com/linruiyi2015/p/15193003.html
Copyright © 2020-2023  润新知