sugar
Version:
A Javascript utility library for working with native objects.
17 lines (13 loc) • 575 B
JavaScript
;
var isDefined = require('../../common/internal/isDefined'),
coreUtilityAliases = require('../../common/var/coreUtilityAliases'),
getOwnPropertyDescriptor = require('../var/getOwnPropertyDescriptor');
var defineProperty = coreUtilityAliases.defineProperty;
function mergeByPropertyDescriptor(target, source, prop, sourceVal) {
var descriptor = getOwnPropertyDescriptor(source, prop);
if (isDefined(descriptor.value)) {
descriptor.value = sourceVal;
}
defineProperty(target, prop, descriptor);
}
module.exports = mergeByPropertyDescriptor;