在Javascript定义对象
2009-03-26 14:56 Virus-BeautyCode 阅读(7131) 评论(0) 编辑 收藏 举报
本文摘自:http://www.chenjiliang.com/article/View.aspx?ArticleID=2430
一、在Javascript中我们可以直接这样定义对象:
复制
保存
这样,我就变成了一个对象了,你可以让我跟你说一句话
复制
保存
二
还不够面向对象,最好的做法是用一个函数来定义对象,在用他的prototype原型对象的方式来定义其属性,事件等,方便继承扩展。
阅读
编辑
运行
复制
保存
三
阅读
编辑
运行
复制
保存
四
阅读
编辑
运行
复制
保存
这里采用init来初始化定义了一个对象,当然我们还可以在function(){}这样写
复制
保存
这样我们就可以写成如下代码
希望更多的朋友发表自己的意见和心得
复制
保存
一、在Javascript中我们可以直接这样定义对象:


var xiaoxing = { grade:1, name : "xiaoxing", age:27, sex:"男", speak:function(words) { alert(this.name+"说:"+words+"!"); }, improve:function() { this.grade++; } }
这样,我就变成了一个对象了,你可以让我跟你说一句话


xiaoxing.speak("欢迎来到cnblogs的supersun的天空"); while(i have friends) { xiaoxing.improve(); }
二
还不够面向对象,最好的做法是用一个函数来定义对象,在用他的prototype原型对象的方式来定义其属性,事件等,方便继承扩展。





<script language="javascript" type="text/javascript"> //创建原型对象,定义属性、方法、及对象事件等。 Student.prototype= { _name:null, _age:null, _sex:null, ShowName:function() { alert("Name:"+ this._name +"\n" + "Age:" + this._age + "\n" + "Sex:"+ this._sex); } } //专门用一个函数来初始化对象。 function Student(name,age,sex) { this._name=name; this._age=age; this._sex=sex; } var student=new Student("Young",25,"男"); //实例化 student.ShowName(); //调用对象方法 </script>
三





<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<BODY>
<script language="javascript" type="text/javascript">
function Student(name,age,sex)
{
this._name=name;
this._age=age;
this._sex=sex;
this.ShowName=function()
{
alert("Name:"+ this._name +"\n" + "Age:" + this._age + "\n" + "Sex:"+ this._sex);
};
}
var student=new Student("Young",25,"男"); //实例化
student.ShowName(); //调用对象方法
</script>
</BODY>
</HTML>
四





<script type="text/javascript"> var person = new Function();//或var person = function(){}都可以 person.prototype={ grade:0, age:0, sex:null, name:null, speak:function(words) { alert(this.name+"说:"+words+"!"); }, init:function(_grade,_age,_sex,_name) { this.grade = _grade;this.age=_age;this.sex=_sex;this.name=_name; } } var xiaoxing = new person(); xiaoxing.init("10","27","男","xiaoxing"); xiaoxing.speak("hello everybody"); </script>
这里采用init来初始化定义了一个对象,当然我们还可以在function(){}这样写


var person = function(_grade,_age,_sex,_name){this.grade = _grade;this.age=_age;this.sex=_sex;this.name=_name;}
这样我们就可以写成如下代码
希望更多的朋友发表自己的意见和心得


var xiaoxing = new person("10","27","男","xiaoxing"); xiaoxing.speak("hello everybody");
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
2008-03-26 C#.NET禁止一个程序启动多个实例
2008-03-26 动态调用c++的dll
2008-03-26 无知||成熟