Javascript JS MVC游戏动态对象?

Javascript JS MVC游戏动态对象?,javascript,jquery,oop,model-view-controller,Javascript,Jquery,Oop,Model View Controller,我很难理解如何在浏览器屏幕上将类/对象表示为图像或div。div将具有属性和方法。假设我在做一个游戏,敌人的飞船随机出现,四处移动 我也应该在每次创建实例时附加一个div标记吗?如何将div连接/绑定到类? 还是有一个更高效的MVC框架 谢谢。首先,MVC不一定是一款完美的游戏,但了解它可以帮助你更好地处理OOP,类似的东西也会有意义 假设CSS适合设置背景图像,将.spaceObject元素设置为绝对值,默认值为0,0,并将body设置为实际设置的宽度/高度框,等等 JS没有类。它使用函数构造

我很难理解如何在浏览器屏幕上将类/对象表示为图像或div。div将具有属性和方法。假设我在做一个游戏,敌人的飞船随机出现,四处移动

我也应该在每次创建实例时附加一个div标记吗?如何将div连接/绑定到类? 还是有一个更高效的MVC框架


谢谢。

首先,MVC不一定是一款完美的游戏,但了解它可以帮助你更好地处理OOP,类似的东西也会有意义

假设CSS适合设置背景图像,将.spaceObject元素设置为绝对值,默认值为0,0,并将body设置为实际设置的宽度/高度框,等等

JS没有类。它使用函数构造函数。我不建议尝试模拟类。构造器没有什么错,当你深入到原型之类的东西时,它们实际上有一些漂亮的优势

function BuildSpaceDiv(divID){
    var $_spaceDiv = $('<div id="'+divID+'" class="spaceObject" />').appendTo('body');

    this.move = function(x,y){
        $_spaceDiv.animate({ top:x, left:y });
    }
}
函数BuildSpaceDiv(divID){
var$_spaceDiv=$('').appendTo('body');
this.move=函数(x,y){
$\u spaceDiv.animate({top:x,left:y});
}
}
不使用new关键字,它就像一个函数一样工作。您可以使用new关键字创建一个对象/实例(不是类/对象,这是图和构建的东西,对象和实例是可互换的术语)

var deathSun=新的BuildSpaceDiv(“死亡太阳”)


您可以创建任意数量的参数,或者添加新的参数来设置起始坐标,等等。。。我喜欢在JS构造函数中使用options对象。请注意,它仍然像函数一样启动,因此如果需要,构建实例可能会产生副作用,$\u spaceDiv var对于每个实例都是唯一的,并且是持久的。

谢谢!我有一种感觉,这就是它的样子。下次当你认为你对它的工作原理有了想法时,打开Chrome开发工具,在控制台上试用一下。这就是学习JS这样的语言的美妙之处。