zoukankan      html  css  js  c++  java
  • 讨论js比较两个数组(对象)是否相等的范围

    注意:目前网络的解答方案有很多了,但是很多人还是觉得并不是自己想要的,本篇文章帮助各位同仁确认范围和需求。

    注意:两个数组或对象的直接比较,是对于地址的比较,不是来自同一地址的均不相等。

    1.两个简单的数组或对象

      A.无数组对象嵌套,且不考虑顺序或值类型的异同,可采用方法简便为:

        转换为字符串类型进行比较,常用方法toString

      B.无数组对象嵌套,考虑顺序但不考虑值类型的异同,可采用方法简便为:

        数组可以通过sort排序再进行toString对比,对象则可以通过遍历,用hasOwnProperty先行比较属性是否存在再进行单个值对比

      C.无数组对象嵌套,考虑顺序且考虑值类型的异同,可采用方法为:

        通过遍历对比各个值的异同,可通过添加类型、长度等判断优化循环

    2.两个复杂的数组或对象

      A.数组对象嵌套,且不考虑顺序或值类型的异同,可采用方法简便为:

        转换为字符串类型进行比较,常用方法toString

      B.数组对象嵌套,考虑顺序但不考虑值类型的异同,可采用方法简便为:

        通过循环+递归的方式,往复执行1方式的B操作即可

      C.数组对象嵌套,考虑顺序且考虑值类型的异同,可采用方法为:

        通过循环+递归的方式,往复执行1方式的C操作即可

    附网络一些解决方法的地址:

    https://blog.csdn.net/gs981600308/article/details/90401843

    https://www.jianshu.com/p/7407bd65b15d

    https://segmentfault.com/a/1190000018266129

    https://www.cnblogs.com/abc-x/p/10780464.html

  • 相关阅读:
    Cordova-conifg.xml配置
    Cordova插件开发
    android shape的使用
    Cordova
    性能优化
    ionic默认样式android和ios差异
    在IIS中部署ASP.NET 5应用程序遭遇的问题
    Ionic命令大全
    IOS开发
    Cordova 8 架构使用sqlite
  • 原文地址:https://www.cnblogs.com/zhaozhou/p/12394494.html
Copyright © 2011-2022 走看看