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()