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您是否尝试运行您提供的任何代码示例?如果问题不清楚,请使用注释而不是错误的答案来澄清。