Javascript 创建对象时对象中的参数名称
我想在函数作为新函数应用时获取参数名。我已经搜索过了,但找不到我要找的东西 这是一个样本Javascript 创建对象时对象中的参数名称,javascript,Javascript,我想在函数作为新函数应用时获取参数名。我已经搜索过了,但找不到我要找的东西 这是一个样本 var myobject = function(){ /*I need "param" in here as string*/ } var param = new myobject(); 感谢您在没有任何图书馆的情况下提供任何想法或参考 原始案例代码为: var selectQueue = []; var queue = function(data){ this.defaults = {
var myobject = function(){
/*I need "param" in here as string*/
}
var param = new myobject();
感谢您在没有任何图书馆的情况下提供任何想法或参考
原始案例代码为:
var selectQueue = [];
var queue = function(data){
this.defaults = {
name: "base",
type: "fifo"
}
this.availableTypes = ["fifo","lifo","random"];
if(!data){data = {};}
for(param in this.defaults){
if(!data[param]){
data[param] = this.defaults[param];
}
}
/*this is what i want to do with dynamic name*/
selectQueue.push({
a:this
});
}
var a = new queue();
对象具有属性,这是语法
var myObject = function(){
name: "your name",
age: 19,
hobby: "football"
}
var param = myObject.name;
这就是定义属性的方式。在JS中,您想要的实际上是不可能的,但一种可能的解决方法是将您想要的名称发送给构造函数,例如:
var selectQueue = [];
var queue = function(data, name){
this.defaults = {
name: "base",
type: "fifo"
}
this.availableTypes = ["fifo","lifo","random"];
if(!data){data = {};}
for(param in this.defaults){
if(!data[param]){
data[param] = this.defaults[param];
}
}
var o = {};
o[name] = this;
selectQueue.push(o);
}
var a = new queue(data, 'a');
另一种可能是跟踪当前的
selectQueue
索引。我不明白为什么有人会对我的问题提出一个小问题。有人能告诉我我做错了什么吗?在js中获取参数的名称并不是一件真正的事情,也不是一个好的实践。我不明白您想用它做什么,但只需定义一个字符串var paramString=“param”
,您可以将变量名作为强函数传递,但实际上没有一种方法可以自动获取它。为什么需要这个?我想在所有创建的异步队列对象完成工作时触发事件。我不想定义属性。在这种情况下,我认为需要定义一个构造函数var myObject=function(){name:“your name”,年龄:19岁,爱好:“football”}myObject.name=“您的姓名”;我想我无法清楚地解释我的需要,我需要函数中参数的名称,这样我就可以在全局数组中堆叠参数的名称。@Yya09您是否尝试运行您提供的任何代码示例?如果问题不清楚,请使用注释而不是错误的答案来澄清。