Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在BDD样式的Javascript中按内容比较两个数组_Javascript_Node.js_Underscore.js_Bdd_Mocha.js - Fatal编程技术网

在BDD样式的Javascript中按内容比较两个数组

在BDD样式的Javascript中按内容比较两个数组,javascript,node.js,underscore.js,bdd,mocha.js,Javascript,Node.js,Underscore.js,Bdd,Mocha.js,我想比较两个不同的数组的内容使用摩卡和应该 现在我经常这样做: test.js var should = require('should') var _ = require('underscore') _.difference(['one', 'two'], [ 'two']).should.eql([]) 执行mocha test.js会产生非常可读的结果: AssertionError:预期['one']等于[] 有没有更好的方法来比较两个数组并获得确切的信息—不同之处是什

我想比较两个不同的数组的内容使用摩卡和应该

现在我经常这样做:

test.js

var should  = require('should')
var _       = require('underscore')

_.difference(['one', 'two'], [ 'two']).should.eql([])
执行mocha test.js会产生非常可读的结果:

AssertionError:预期['one']等于[]


有没有更好的方法来比较两个数组并获得确切的信息—不同之处是什么

你所拥有的一切都很好。两个更正是,我将切换到lodash,而不是下划线,它与API兼容,但速度更快

但在您的示例中,我将跳过lodash/下划线,只需执行以下操作:

(['one', 'two']).should.eql(['two', 'three'])

如果你想让错误消息告诉你什么是不同的(而且不是很明显),你应该坚持使用lodash。

你说的更好的方法是什么意思?当前的方法有什么问题?它可以工作,但当前的逻辑是反向的-获取两个数组之间的差异并与空数组进行比较