为什么我得到“undefined不是一个函数。当我想在main函数中创建Player变量时出现问题。在使用onload函数和init WebGL和函数main之前一切正常,不存在他们的内容只是写在html文件的脚本中。所以在外部文件中创建新播放器没有问题。 不知何故,这个功能不存在。
这是我的html文件的一部分
<head>
<script src="player.js" type="text/javascript"> </script>
<script src="main.js" type="text/javascript"></script>
</head>
<body onload="initWebGL()">
<canvas id="canvas" width="800" height="600"> </canvas>
</body>
我的main.js
function initWebGL() {
//......
main();
}
function main() {
// Player
var Player = new Player();
//.....
答案 0 :(得分:1)
它给你这个错误,因为你用一个upercase命名你的变量,它与你的对象玩家的名字完全相同,试着改变你的行:
var Player = new Player();
到
var player = new Player();
查看this fiddle以查看其中的操作,错误的按钮会在右侧按钮工作时在控制台中记录您的错误!
修改:在您的评论中,您在var Camera = new Camera();
时谈到了同样的错误,只需将其更改为var camera = new Camera();
即可解决您的问题,请不要忘记更改相应的代码。