目前我在获取 document.write 中的变量名称时遇到问题
function func(name, birth_date) {
this.name=name;
this.birth_date=birth_date;
this.atestatas=studijos;
}
function studijos(){
var egzas=2023-func.birth_date;
return egzas;
}
var Piotr=new func ("Piotr", 1995);
var Jonas=new func ("Jonas", 2001);
var Lukas=new func ("Lukas", 1999);
document.write (Piotr.atestatas());
document.write (Jonas.atestatas());
document.write (Lukas.atestatas());
如果我写 var egzas=2023-func.birth_date
我得到的只是 NaN,但是如果我写变量的名称例如:egzas=2023-Piotr.birth_date
,然后我得到了考试前几年的正确结果。有没有一个代码可以让我得到的值(value)
document.write (Piotr.atestatas());
document.write (Jonas.atestatas());
文档.write (Lukas.atestatas());
不将函数代码更改为每个变量的名称?
最佳答案
您可以在 studijos() 函数中使用 this
来引用该对象。以下代码运行良好:
function func(name, birth_date) {
this.name=name;
this.birth_date=birth_date;
this.atestatas=studijos;
}
function studijos(){
var egzas=2023-this.birth_date;
return egzas;
}
var Piotr=new func ("Piotr", 1995);
var Jonas=new func ("Jonas", 2001);
var Lukas=new func ("Lukas", 1999);
document.write (Piotr.atestatas());
document.write (Jonas.atestatas());
document.write (Lukas.atestatas());
关于javascript - 如何获取document.write中的变量名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59229359/