deep-merge icon indicating copy to clipboard operation
deep-merge copied to clipboard

merge RegExp literal values error

Open dickeylth opened this issue 9 years ago • 0 comments

Because of node's assert.deepEqual bug: https://github.com/iojs/io.js/issues/1362 (the bug existed both on io.js and node.js), deep-merge may wrongly merge regexp literal values:

var DeepMerge = require("deep-merge")
var deepmerge = DeepMerge(function (target, source) {
    return [].concat(target, source)
})
var a = { foo: "bar", bar: /bar/i }
var b = { bar: "foo", baz: /foo/i }
var res = deepmerge(a, b)
console.log(res)
// expect: { foo: 'bar', bar: [ /bar/i, 'foo' ], baz: /foo/i }
// result: { foo: 'bar', bar: [ /bar/i, 'foo' ], baz: {} }

dickeylth avatar Apr 07 '15 08:04 dickeylth