javascript получить имя родительского объекта/переменной [дубликат]

Допустим, у меня есть

var myObject = {

  'myFunction' : function () {
    // something here that lets me get 'myObject'
  }

}

Я пробовал различные функции, найденные здесь, и такие вещи, как this.constructor.name, но я всегда получаю «Объект» в качестве возвращаемого значения. Есть ли способ получить фактическое имя переменной в этой ситуации?

отредактируйте, чтобы объяснить почемутак что, может быть, люди лучше поймут... Я хочу иметь возможность сделать функцию, которая постоянно вызывается с помощью setInterval. Что-то вроде этого:

var myObject = {
  'intval' : '',
  'timeout' : 500,

  'start' : function () {
    this.objectName = 'myObject'; // <--I want this to be dynamically popped
    this.intval=window.setInterval("window['"+this.objectName+"'].myFunction()",this.timeout);
  },

  'stop' : function () {
    window.clearInterval(this.intval);
    this.intval='';
  },

  'myFunction' : function () {
    // do something
  }
}

Это прекрасно работает, если я жестко закодирую 'myObject' в this.objectName, но я не хочу, чтобы это было жестко закодировано. Проблема в том, что я не хочу просто выполнять setInterval("window[this.objectName]",100), потому что это не в правильном контексте при запуске setInterval`, и я не хочу, чтобы имя объекта было жестко запрограммировано

6
задан slinkhi 31 May 2012 в 17:28
поделиться