UNPKG

vislite

Version:

灵活、快速、简单的数据可视化交互式跨端前端库

39 lines (36 loc) 1.16 kB
var toString = Object.prototype.toString; function getType(value) { if (value == null) { return value === undefined ? '[object Undefined]' : '[object Null]'; } return toString.call(value); } function isPlainObject(value) { if (value === null || typeof value !== 'object' || getType(value) != '[object Object]') { return false; } if (Object.getPrototypeOf(value) === null) { return true; } var proto = value; while (Object.getPrototypeOf(proto) !== null) { proto = Object.getPrototypeOf(proto); } return Object.getPrototypeOf(value) === proto; } function mergeOption(oldOption, newOption) { (function doit(oldOption, newOption) { for (var key in newOption) { var value = newOption[key]; if (isPlainObject(value)) { if (!oldOption[key]) oldOption[key] = {}; doit(oldOption[key], newOption[key]); } else { oldOption[key] = value; } } })(oldOption, newOption); } export { mergeOption as default };