【问题标题】:How to pass variable from one Javascript to another Javascript file [duplicate]如何将变量从一个Javascript传递到另一个Javascript文件[重复]
【发布时间】:2017-05-06 11:14:59
【问题描述】:

我尝试了以下操作,试图将一个 JavaScript 文件中的变量传递给另一个 JavaScript 变量。我的第一个 JavaScript 文件:

var x = "sachin";

我的其他 JavaScript 文件无法访问该 x 变量值。我该如何解决这个问题?我可以在另一个文件中访问 x 变量和相同的值。

【问题讨论】:

  • 我知道它含糊,但试试window.x = "sachin"
  • 与全局变量一起使用并对js文件逐个排序var x = "sachin"是第一个js文件。然后在文件下方添加下一个js文件。顺序很重要。<script src="var x=sachin"></script> <script src="2nd file"></script>
  • 确保带有变量的文件在另一个文件之前
  • “我可以访问另一个文件中的 x 变量和相同的值。” - 你是说文件 1 中的 x 可以吗?不能从文件 2 访问,但可以从文件 3 访问?您按什么顺序包含文件?
  • 你是指两个脚本在同一个页面还是不同的页面?

标签: javascript


【解决方案1】:

有关更多信息,请参阅局部变量和全局变量。 http://www.w3schools.com/js/js_scope.asp

确保您的 var X 不在函数内,并且您的文件以正确的顺序加载。

<script src="file1.js"><script> //declare var x=1 here
<script src="file2.js"><script> // you can access x from here.

【讨论】:

  • 基本上我的项目是一个简单的聊天应用程序,它有API_KEY之类的凭据,这样,这种方法在这里有效吗?
【解决方案2】:

可以从所有 javascript 文件访问全局范围内的变量。
你的第一个 js 文件

  //first.js file
    var globalVariable={
       x: 'sachin'
    };

还有你的第二个 js 文件

    //second.js file
    alert(globalVariable.x);

并在html页面中添加-

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

【讨论】:

  • 没有两个script 元素你能做到吗?基本上在first.js里面导入second.js
【解决方案3】:

我将假设您在浏览器中运行 JavaScript。包含这些文件的顺序很重要。如果您的脚本标签顺序错误,例如...

<script src="file2.js"></script>
<script src="file1.js"></script>

如果x在file1中定义,则不能在file2中使用。 file2 首先加载并运行。

【讨论】:

    【解决方案4】:

    两种最简单的方法是将变量设为全局变量或将其添加到两个文件共享的特定命名空间。

    使其全球化(不理想):

    window.x = "sachin";
    

    要添加到一个公共命名空间(记住这个命名空间也是全局的):

    • 在第三个文件MYAPP = {}; 中创建命名空间
    • 在第二个文件中使用命名空间:MYAPP.x = "sachin;"
    • 从第三个文件中的同一命名空间访问变量:MYAPP.x

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-02
      • 1970-01-01
      相关资源
      最近更新 更多