如何在javascript

时间:2018-04-10 07:06:25

标签: javascript function

我想在另一个函数中访问一个函数变量,

我的第一个功能和变量

var max;
papaya.viewer.Viewer.prototype.pagination = function () {
 var max =  this.volume.header.imageDimensions.zDim;
}  

我的第二个功能

papaya.Container.fillContainerHTML = function(){
     // I want to access max value here
}

我想将 max 值访问第二个函数

我尝试了许多方法,但我无法做到。

3 个答案:

答案 0 :(得分:0)

只需将max声明为函数之外的全局变量,两者都可以访问它们,如下所示:

var max;
papaya.viewer.Viewer.prototype.pagination = function () {
 max =  this.volume.header.imageDimensions.zDim;
}
papaya.Container.fillContainerHTML = function(){
     // You can now access max value here
}

如果它不起作用,请发送在线演示,以便我们提供帮助。

答案 1 :(得分:0)

您可以返回此值并从fillContainerHTML

获取
papaya.viewer.Viewer.prototype.pagination = function () {
 return  this.volume.header.imageDimensions.zDim;
}

papaya.Container.fillContainerHTML = function(){
     var view = new papaya.viewer.Viewer();
    var a = view.pagination();
    console.log(a);

}

答案 2 :(得分:0)

您问题的最佳和最简单的解决方案

嗨。我对你问的问题研究了很多。我看了很多教程,但它们真的很复杂。所以有一次,我在做一个项目。我没有意识到,但我使用了在另一个函数的函数中创建/编辑的变量。这真的很简单。您需要创建本地存储来执行此操作。 localStorage 和 sessionStorage 属性允许在 Web 浏览器中保存键/值对。几乎所有著名或已知的网络浏览器都支持它,例如 Google Chrome、Firefox、Opera、safari、Microsoft Edge 等。

注意:如果您单击“运行代码片段”按钮,代码将无法运行,因为 Stack Overflow 不支持本地存储。因此,转到另一个文本编辑器(如记事本),运行代码,然后在任何浏览器(如上所述)上查看结果。它会起作用。

// Creates a variable
var max = "Nothing";

function btn1() {
  // Makes a change to max variable
  var max = "Max variable changed";
  // Creates Local Storage on browser
  var setLocalStorage = localStorage.setItem("max", max);
}

function btn2() {
  var getLocalStorage = localStorage.getItem("max");
  document.ById("text").innerHTML = getLocalStorage;
}
<html>

<body>
  <p id="text"> Nothing </p>
  <button onclick="btn1()"> Make change </button>
  <button onclick="btn2()"> See change </button>
</body>

</html>