Прямым вызовом:
// 1.js
var someObj = {
value: 123
};
// 2.js
var anotherObj = {
move: function() {
alert(someObj.value);
}
};
Либо через dependency injection при инициализации объектов, в зависимости от того, как построена логика приложения. Мне нравится больше этот вариант:
// 1.js
function someObj() {}
someObj.prototype.init = function() {
this.value = 123;
}
// 2.js
function anotherObj() {}
anotherObj.prototype.init = function(dependentObj) {
this.someObj = dependentObj;
alert(this.someObj.value);
}
// index.html
var obj1 = new someObj();
obj1.init();
var obj2 = new anotherObj();
obj2.init(obj1);