Javascript 有人能给我解释一下为什么这个不能运行吗?
我应该创建一个类,然后使用该类创建一个具有相同属性的新对象,显示它们,更改价格,然后显示新信息。我很困惑。我甚至不知道我哪里出了问题Javascript 有人能给我解释一下为什么这个不能运行吗?,javascript,html,class,object,Javascript,Html,Class,Object,我应该创建一个类,然后使用该类创建一个具有相同属性的新对象,显示它们,更改价格,然后显示新信息。我很困惑。我甚至不知道我哪里出了问题 <!DOCTYPE html> <html> <head> <script type="text/javascript"> function Television(manufac, scrnSize, retPrice) { myTV.manufacturer =
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function Television(manufac, scrnSize, retPrice) {
myTV.manufacturer = manufac
myTV.diagScrnSize = scrnSize
myTV.retailPrice = retPrice
myTV.setPrice = setPrice()
myTV.displayInfo = displayInfo()
};
</script>
</head>
<body>
<script type="text/javascript">
// Display function
function displayInfo() {
document.write("Manufacturer: + myTV.manufacturer + BR");
document.write("Screen Diagonal Size: + myTV.diagonalSize + BR");
document.write("Retail Price: + myTV.retailPrice + BR");
document.write("Thank you!");
};
// Set price function
function setPrice() {
p = parsefloat(p);
this.retailPrice = setPrice;
};
function displayInfo() {
document.write("Manufacturer: + myTV.manufacturer + BR");
document.write("Screen Diagonal Size: + myTV.diagonalSize + BR");
document.write("Retail Price: + myTV.retailPrice + BR");
document.write("Thank you!");
};
var BR = "<br />"
var myTV = new Television("Sony", 52, 1299.00);
// Run the program
myTV.displayInfo()
myTV.setPrice()
myTV.displayInfo()
</script>
</body>
</html>
功能电视(制造商、scrnSize、翻新价格){
myTV.manufacturer=manufac
myTV.diagScrnSize=scrnSize
myTV.retailPrice=retPrice
myTV.setPrice=setPrice()
myTV.displayInfo=displayInfo()
};
//显示功能
函数displayInfo(){
文件。写入(“制造商:+myTV.Manufacturer+BR”);
文档。写入(“屏幕对角线大小:+myTV.diagonalSize+BR”);
文档。写入(“零售价格:+myTV.retailPrice+BR”);
文件。写下(“谢谢!”);
};
//定价函数
函数setPrice(){
p=p;
这个。零售价格=设定价格;
};
函数displayInfo(){
文件。写入(“制造商:+myTV.Manufacturer+BR”);
文档。写入(“屏幕对角线大小:+myTV.diagonalSize+BR”);
文档。写入(“零售价格:+myTV.retailPrice+BR”);
文件。写下(“谢谢!”);
};
var BR=“
”
var myTV=新电视(“索尼”,521299.00);
//运行程序
myTV.displayInfo()
myTV.setPrice()
myTV.displayInfo()
试试这个。你有不少错误。把你的和这个做比较,看看你哪里做错了
功能电视(manufac、scrnSize、retPrice){
本制造商=制造商;
this.diagScrnSize=scrnSize;
这个。零售价=零售价;
this.setPrice=函数(p){
p=p;
这是零售价=p;
}
this.displayInfo=函数(){
文件。写入(“制造商:”+myTV.Manufacturer+BR);
文档。写入(“屏幕对角线大小:+myTV.diagScrnSize+BR”);
文件。写入(“零售价:+myTV.retailPrice+BR”);
文档。写下(“谢谢!”+BR);
};
};
var BR=“
”;
var myTV=新电视(“索尼”,521299.00);
myTV.displayInfo();
myTV.setPrice(1099.00);
myTV.displayInfo()代码>你做了什么来调试这个问题?到底是什么问题?myTV
在您的tv
函数中未定义。它不会继承一些尚未定义的内容。我建议看一看JS教程,例如or。代码中有两个错误:您引用的是未声明或未初始化的变量。您似乎不知道这是如何工作的。您没有正确使用字符串连接。请在tv
函数中将myTV
更改为this
。远离document.write()
。