2012-01-06 2 views
1

신고하려는 개체가 매우 많습니다. 그러나, 나는 보조 자바 스크립트 파일에서 내 기본 자바 스크립트 파일에 혼란을 계속 그렇게하고 싶습니다. 기본 자바 스크립트 파일의 코드가 보조 파일에서 작성중인 객체에 계속 액세스 할 수 있도록하려면 어떻게해야합니까?여러 자바 스크립트 파일 사용

+0

하나는 모든 개체 정의가 있고 다른 하나는 파일을 사용합니다. 그래서 2 개의 스크립트 파일을 추가하십시오. – Ibu

답변

2

메서드의 범위를 벗어난 개체를 선언하면 전역 적으로 액세스 할 수 있습니다.

보조 스크립트 :

object myObj; 
object myObj; 

$(document).ready(function() { 
    // Do your manipulations here if needed. 
}); 

차 스크립트 :

$(document).ready(function() { 
    myObj.property = "value"; 
}); 
또한

, 그래서 같은 마크 업 페이지에서 기본 일 전에 "보조"파일을 참조 :

<head> 
    ... 
    <script src="js/auxiliary.js" type="text/javascript"></script> 
    <script src="js/primary.js" type="text/javascript"></script> 
</head> 
+0

OK. 도와 주셔서 감사합니다. 간단한 질문이지만 프로그래밍에 초보자입니다. – WyoBuckeye

0

기본적으로 내가하는 일은 다음과 같습니다 (이 기능은 상자에서 작동하지 않을 수 있습니다. 실제로는 실제로 작동하는 방식에 가깝습니다) :

1) 전역 범위가있는 JS 파일을 만들고 모두를 보류 할 개체를 선언하십시오 이러한 다른 목적 :

var Registry = {}; 

Registry.object1 = { name: "Jack", age: "30" }; 
Registry.object2 = { name: "Sharon", age: "28" }; 

2) 보조 (보조 만들기를 global.js) 해당 오브젝트 사용

을 people.jsHi, Jack! Meet Sharon! She's only 28 years old!

당신은 모든 전역 객체를 포함하는 모든 페이지에 global.js을 포함, 당신이 그들을 필요로 할 때 만 보조 JS 파일을 사용 : 출력한다

(function() { 
    console.log("Hi, "+Registry.object1.name+"! Meet "+Registry.object2.name+"! She's only "+Registry.object2.age+" years old!"); 
}); 

.

내가 다른 레지스트리를 보유하기 위해 레지스트리 객체를 만든 주된 이유는 그 밖의 다른 객체가 충돌 할 수 없도록하는 것입니다. 다른 곳에 "object1"이라는 다른 객체가 있으면 문제가 발생할 수 있지만, 다른 객체에 붙이면 충돌이 발생하지 않습니다. (즉, Registry.object1object1과 다릅니다.)

개체에는 함수를 포함 할 수 있으므로 효과적으로 사용할 수 있으므로 전역 클래스를 사용할 수 있습니다.

기본적으로 내가하는 방법입니다. 희망이 도움이됩니다.

행운을 빈다. :)