我已经尝试做 javascript 一段时间了,但我希望它是“面向对象的”,所以我尝试在不同的文件中创建不同的 javascript 类,并尝试创建一个对象并在不同的文件中调用它的方法功能,但似乎不起作用。
这是我到目前为止所拥有的:
person.js
function Person(name, age, gender)
{
this.age = age;
this.name = name;
this.gender = gender;
this.job;
this.setJob = function(job)
{
this.job = job;
}
this.getAge = function()
{
return this.age;
}
this.getName = function()
{
return this.name;
}
this.getGender = function()
{
return this.gender;
}
}
Job.js
function Job(title)
{
this.title = title;
this.description;
this.setDescription = function(description)
{
this.description = description;
}
}
main.js
function main()
{
var employee = new Person("Richard", 23, male);
document.getElementById("mainBody").innerHTML = employee.getName();
}
索引.html
<!DOCTYPE HTML>
<HTML>
<head>
<title>javascript test</title>
<script src="main.js" type="javascript"></script>
</head>
<body>
<p id="mainBody"></p>
</body>
</HTML>
任何帮助或建议将不胜感激。
非常感谢
编辑:
非常感谢所有的答案和建议,但是,我已经包含了所有的 javascript 文件,但它仍然不起作用......
目前,JavaScript 还不够聪明,无法在没有帮助的情况下找到您的依赖项。
你需要:
<!DOCTYPE HTML>
<HTML>
<head>
<title>javascript test</title>
<script src="person.js" type="javascript"></script>
<script src="Job.js" type="javascript"></script>
<script src="main.js" type="javascript"></script>
</head>
<body>
<p id="mainBody"></p>
</body>
</HTML>
Note:
如果您想要按需加载依赖项,那么您可以使用AMD http://requirejs.org/docs/whyamd.html(异步模块定义)与要求 http://requirejs.org/或者是其他东西。
使用 AMD,您可以定义如下内容:
define(['Job', 'person'], function (job, person) {
//Define the module value by returning a value.
return function () {};
});
Define 方法接受两个参数:依赖项和定义模块的函数。
加载所有依赖项后,它们将作为参数传递给模块定义所在的函数。
还有一件事需要注意的是Person
and Job
不是类。它们只是根据定义中的规则生成对象的函数(构造函数)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)