2016-11-28 94 views
1

我真的很新的JavaScript的sooo ...如何在函數中獲取新對象的構造函數的名稱? (JavaScript)的

我有一個類:

var warrior = function(HP) { 
    this.health = HP; 
} 

當我創建一個新戰士:

var somebody = new warrior(50); 

我我喜歡給這個新元素命名爲「某人」。我該怎麼做?

+1

你不得不在通過它,'變種人=新戰士(50 '有人');',改變類'var Warrior = function(hp,name){this.health = hp; this.name = name; };' – david

+0

我有一個限制,即通話應該看起來像我寫的,但任務在稍後的功能中使用了來電者姓名。 battle.getWinner(); //應該返回「one」 – R2DToo

+0

你可以做一些像warrior.prototype.name;然後去somebody.name =「某人」; – Heinrich

回答

0

你不能。變量名對程序功能沒有意義。如果您關心該名稱,請使用字符串並將其作爲參數傳遞。

0

事情是這樣的,也許:

var warrior = function(HP) { 
 
    this.health = HP; 
 
} 
 

 
warrior.prototype.name; 
 

 
var somebody = new warrior(50); 
 

 
somebody.name = 'somebody'; 
 

 
console.log(somebody);

+0

謝謝,但它必須與我給新元素的每個名稱一起工作。 – R2DToo

+0

對不起,我不完全理解這個問題,你是否在談論能夠通過不同的名稱引用某人的對象?或者你是在談論每個有名的戰士的例子? – Heinrich

+0

我可以用我想要的任何名字創建一個戰士,並且我想在其他函數中使用該名稱。 – R2DToo

相關問題