Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问变量键并将其用作另一个函数中的变量?_Javascript_Node.js - Fatal编程技术网

Javascript 如何访问变量键并将其用作另一个函数中的变量?

Javascript 如何访问变量键并将其用作另一个函数中的变量?,javascript,node.js,Javascript,Node.js,我对标题感到抱歉,我不确定我要解决的问题的名称 假设我有下面的类和一个函数 { printInfo(age){ console.log(name) console.log(age) } } 从另一个页面,我想这样调用该类: someClass.Mike.printInfo(21),该函数将打印Mike和21。当然,Mike的名字是可变的,所以它可以是任何东西 有没有办法做到这一点?也许类的构造函数中有什么特别的东西?一些JSON对象键操作 谢谢。假设您已将姓名存储在某处,例如: con

我对标题感到抱歉,我不确定我要解决的问题的名称

假设我有下面的类和一个函数

{
 printInfo(age){
 console.log(name)
 console.log(age)
 }
}
从另一个页面,我想这样调用该类:
someClass.Mike.printInfo(21)
,该函数将打印Mike和21。当然,Mike的名字是可变的,所以它可以是任何东西

有没有办法做到这一点?也许类的构造函数中有什么特别的东西?一些JSON对象键操作


谢谢。

假设您已将姓名存储在某处,例如:

const names = ['Mike', 'Dave'];
如果函数确实存储在具有以下动态属性的对象中,则可以访问该函数:

names.forEach(name => {
   someClass[name].printInfo(21);
})
如果这不是你需要的,你应该试着把你的问题写得更详细一点


来自另一个页面的语句也有点混乱,如果该页面上未定义类,则您无法访问它。

假设您已将名称存储在某个位置,例如:

const names = ['Mike', 'Dave'];
如果函数确实存储在具有以下动态属性的对象中,则可以访问该函数:

names.forEach(name => {
   someClass[name].printInfo(21);
})
如果这不是你需要的,你应该试着把你的问题写得更详细一点


来自另一个页面的语句也有点混乱,如果该页面上没有定义类,则您无法访问它。

您需要传递正在使用的任何变量。您可以通过将它们分开来执行此操作:

    printInfo(name, age)
要使用它,您可以这样调用该方法:

    SomeClass.printInfo("Mike", 21);

您需要传递正在使用的任何变量。您可以通过将它们分开来执行此操作:

    printInfo(name, age)
要使用它,您可以这样调用该方法:

    SomeClass.printInfo("Mike", 21);

为每个人创建一个实例,并在构造函数中传递姓名,然后从实例中调用
printInfo()
,以获取姓名和年龄:

class-SomeClass{
建造师(姓名、年龄){
this.name=名称;
这个。年龄=年龄;
}
打印信息(年龄){
console.log(this.name)
console.log(age | | this.age)
}
}
const mike=new SomeClass('mike');
mike.printInfo(21);
const jean=新的SomeClass('jean',17);

jean.printInfo()为每个人创建一个实例,并在构造函数中传递姓名,然后从实例调用
printInfo()
以获取姓名和年龄:

class-SomeClass{
建造师(姓名、年龄){
this.name=名称;
这个。年龄=年龄;
}
打印信息(年龄){
console.log(this.name)
console.log(age | | this.age)
}
}
const mike=new SomeClass('mike');
mike.printInfo(21);
const jean=新的SomeClass('jean',17);

jean.printInfo()您的问题非常不清楚;例如,您不需要“调用”类,所有的JS都在包含脚本标记的每个页面上。您的意思是想从其他上下文访问类方法
printInfo()
?你问的名字是什么完全不清楚。你是说你
someClass[var\u包含属性名称].printInfo()
?为什么
printInfo()
不只是
someClass
的一个方法,这样你就可以随时访问它,并提供名称和年龄作为参数,例如
someClass.printInfo(Mike,21)
?你所要求的是不可能的。使用变量或属性的值时,无法知道变量或属性的名称。因此,如果调用
myFunction()
myObject.myMethod()
您实际上没有可用的名称。您最多可以有命名函数,例如,
function someFunction(){}
,但是如果您在执行时调用了
someNewName=someFunction
,您仍然无法确定是调用了
someFunction()
还是
someNewName()
。谢谢您的回复。是的,我正在尝试执行某些类[var\u包含属性名称].printInfo(),并在printInfo()中使用该var\u包含属性名称。我想看看是否有办法做到这一点。我不想马上说这是不可能的,我想看看我是否遗漏了什么。谢谢,你的问题很不清楚;例如,您不需要“调用”类,所有的JS都在包含脚本标记的每个页面上。您的意思是想从其他上下文访问类方法
printInfo()
?你问的名字是什么完全不清楚。你是说你
someClass[var\u包含属性名称].printInfo()
?为什么
printInfo()
不只是
someClass
的一个方法,这样你就可以随时访问它,并提供名称和年龄作为参数,例如
someClass.printInfo(Mike,21)
?你所要求的是不可能的。使用变量或属性的值时,无法知道变量或属性的名称。因此,如果调用
myFunction()
myObject.myMethod()
您实际上没有可用的名称。您最多可以有命名函数,例如,
function someFunction(){}
,但是如果您在执行时调用了
someNewName=someFunction
,您仍然无法确定是调用了
someFunction()
还是
someNewName()
。谢谢您的回复。是的,我正在尝试执行某些类[var\u包含属性名称].printInfo(),并在printInfo()中使用该var\u包含属性名称。我想看看是否有办法做到这一点。我不想马上说这是不可能的,我想看看我是否遗漏了什么。谢谢,谢谢,但那不是我想要的。这只是一个数组,您正在调用数组项上的方法。我不是在调用数组项上的方法,我是在名为数组项的对象someClass上调用方法谢谢,但这不是我要找的。这只是一个数组,您正在调用metho