首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >yui中的深度比较数组

yui中的深度比较数组
EN

Stack Overflow用户
提问于 2013-03-16 21:09:06
回答 1查看 147关注 0票数 1

在yui3测试中(类似于QUnit的deepEqual),有没有推荐的深度比较2个数组的方法?我查看了一下源代码,我能想到的最好的办法就是从matrix/matrix.js中窃取这个函数(略有重写),它可以很容易地修改为递归的任意深度比较,但我现在离题了……

代码语言:javascript
复制
function compare(list1, list2)
{
    var i = 0, len = list1.length, len2 = list2.length, isEqual = len === len2;
    if(isEqual) {
        for(; i < len; ++i) {
            if(list1[i] != list2[i]) {
                isEqual = false; break;
            }
        }
    }
    return isEqual;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-16 22:06:07

是的,YUI测试有一个Test.ArrayAssert名称空间,其中有许多数组断言。特别是,您有使用==进行测试的itemsAreEqual和使用===itemsAreEquivalent。您可以通过包含test模块免费获得此功能。

代码语言:javascript
复制
YUI().use('test', function (Y) {
  var ArrayAssert = Y.Test.ArrayAssert;

  var testCase = new Y.Test.Case({
    name: "TestCase Name", 

    //traditional test names
    testSomething : function () {
      ArrayAssert.itemsAreEqual([1, 2, 3], foo, 'all items should be 1, 2, 3');
    }
  });
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15449672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档