[javascript] 다른 파일에서 변수에 액세스 할 수 있습니까?

first.js다른 파일 안에 있는 파일에 변수를 사용할 수 second.js있습니까?

first.js라는 변수를 포함합니다 colorcodes.



답변

Fermin이 말했듯이 전역 범위의 변수는 선언 된 후로드 된 모든 스크립트에서 액세스 할 수 있어야합니다. window또는 전역 범위에서 속성을 사용 this하여 동일한 효과를 얻을 수도 있습니다.

// first.js
var colorCodes = {

  back  : "#fff",
  front : "#888",
  side  : "#369"

};

… 다른 파일에서 …

// second.js
alert (colorCodes.back); // alerts `#fff`

… html 파일에서 …

<script type="text/javascript" src="first.js"></script> 
<script type="text/javascript" src="second.js"></script> 


답변

다음을 사용하여 첫 번째 파일에서 변수를 내보낼 수 있습니다 수출 .

//first.js
const colorCode = {
    black: "#000",
    white: "#fff"
};
export { colorCode };

그런 다음 import를 사용하여 변수를 두 번째 파일로 가져옵니다 .

//second.js
import { colorCode } from './first.js'

수출-MDN


답변

위의 답변 이 마음에 들었지만 나와 함께 작동하지 않았습니다.

내가이 declaring변수 insideJQuery 이기 때문에$( document ).ready()

<script>다른 곳이 아닌 태그 안에 변수를 선언하십시오


답변

이것은 작동해야합니다-firstfile에서 전역 변수를 정의하고 secondfile에서 액세스하십시오.

<script src="/firstfile.js"></script>
<script src="/secondfile.js"></script>

firstfile.js :

var colors = {
   text:'#000000',
   background:'#aaaaaa',
   something_else:'blue'
};

secondfile.js :

do_something_with(colors.background);

스크립트 파일을로드하는 순서는 일부 브라우저에서 중요합니다 (IE6, 아마도 다른 브라우저).


답변

Node.js를 사용하면 모듈을 통해 변수를 내보낼 수 있습니다.

//first.js
const colorCode = {
    black: "#000",
    white: "#fff"
};
module.exports = { colorCode };

그런 다음 require를 사용하여 모듈 / 변수를 두 번째 파일로 가져옵니다.

//second.js
const { colorCode } = require('./first.js')

Webpack / Babel을 사용하여 ES6 에서 importexportaproach를 사용할 수 있지만 Node.js 에서는 플래그활성화 해야 하며 .mjs 확장자를 사용합니다.


답변

amplify.js발견했습니다 . 사용하기 정말 간단합니다. 값을 저장하려면 “myValue”라고하겠습니다.

amplify.store("myKey", "myValue")

액세스하려면

amplify.store("myKey")


답변

색상 코드를 전역 변수에 저장하면 어느 자바 스크립트 파일에서나 액세스 할 수 있어야합니다.