0
如何扩展一个对象与更多的键从另一个脚本来?Javascript扩展对象与其他脚本中的新键
所以我有这个需要主脚本,在这里我创建一个通用对象,我将在整个项目中使用。
现在另一个脚本我已经是创造基本的项目信息,我想有这个主要对象以及
所以我需要main.js看起来是这样的:
//my main object
var mainObj = mainObj || {};
require.config({
paths: {
leaflet: './leaflet-0.7.3',
bootstrap: './vendors/bootstrap.min',
projectInfo: './project-info'
},
shim: {
'bootstrap': {
deps: ['projectInfo'],
export: 'bootstrap'
},
}
});
define(['projectInfo'], function(projectInfo) {
'use strict';
mainObj = {
//HERE I NEED THE PROJECTINFO OBJECTS
projection: projectInfo.projection,
version: projectInfo.projection
};
} );
这里是与projectInfo脚本:
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
define([], factory);
} else if (typeof exports === 'object') {
module.exports = factory();
} else {
factory(root);
}
}(this, function() {
return {
projection: {
type: 'EPSG:4326',
proj4: '+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs',
resolutions: [1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 1, 0.5],
tilesMap: 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
tilesSat: 'http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}'
},
version: '0.0.1'
};
}));
这工作,howeverdon't希望有“复制”手工的信息,我宁愿只用该信息一气呵成扩展这个mainObj /一条线。
有没有办法做到这一点,而不必编写另一个脚本来做到这一点?
在此先感谢!
谢谢!但如果你是不使用下划线? – BonifatiusK 2014-11-25 14:54:25
@BonifatiusK:['Object.assign'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)。 – 2014-11-25 14:56:48
@BonifatiusK:你也可以使用jQuery的[extend](http://api.jquery.com/jquery.extend/)函数。 – soulprovidr 2014-11-25 14:58:53