qqmmcc123 发表于 2011-12-20 09:48

创建对象


                一.定义对象<div><span class="Apple-style-span" style="font-size: 12px;">第一步:创建一个函数来构造新的对象<br></span><div>例:</div><div>命名对象是Card对象,每个对象都有下面的属性:</div><div>--- name(姓名)</div><div>--- addres(地址)</div><div>--- workphone(办公电话)</div><div>--- homephone(家庭电话)</div><div><br></div><div>Card对象的构造函数</div><div><br></div></div><table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#999999" width="95%" bgcolor="#F1F1F1"><tbody><tr><td><p style="line-height: 150%; margin: 5px"><code><span style="color:#000000;">funtion Card<span style="color:#0000CC;">(</span><span style="color:#FF0000;">name</span><span style="color:#0000CC;">,</span>address<span style="color:#0000CC;">,</span>work<span style="color:#0000CC;">,</span><span style="color:#FF0000;">home</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">{</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span><span style="color:#FF0000;">name</span> <span style="color:#0000CC;">=</span> <span style="color:#FF0000;">name</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span>address <span style="color:#0000CC;">=</span> address<span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span>workphone <span style="color:#0000CC;">=</span> work<span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span>homephone <span style="color:#0000CC;">=</span> <span style="color:#FF0000;">home</span><span style="color:#0000CC;">;</span></span></code></p><p style="line-height: 150%; margin: 5px"><code><font class="Apple-style-span" color="#0000cc">&nbsp; &nbsp; this.PrictCard = PrictCard;//定义方法引用函数<br></font>
<span style="color: rgb(0, 0, 204); ">}</span></code></p></td></tr></tbody></table><br><div>二.定义对象的方法(就是定义一个函数)</div><div><br></div><div>读取当前对象(this)的属性</div><div><br></div><table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#999999" width="95%" bgcolor="#F1F1F1"><tbody><tr><td><p style="line-height: 150%; margin: 5px"><code><span style="color:#000000;"><span style="color:#0000FF;">function</span> PrictCard<span style="color:#0000CC;">(</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">{</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;line1 <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"Name:"</span><span style="color:#0000CC;">+</span><span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span><span style="color:#FF0000;">name</span><span style="color:#0000CC;">+</span><span style="color:#FF00FF;">"&lt;br&gt;\n"</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;line2 <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"Address:"</span><span style="color:#0000CC;">+</span><span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span>address<span style="color:#0000CC;">+</span><span style="color:#FF00FF;">"&lt;br&gt;\n"</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;line3 <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"Work Phone:"</span><span style="color:#0000CC;">+</span><span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span>workphone<span style="color:#0000CC;">+</span><span style="color:#FF00FF;">"&lt;br&gt;/n"</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;line4 <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"Home Phone:"</span><span style="color:#0000CC;">+</span><span style="color:#0000FF;">this</span><span style="color:#0000CC;">.</span>homephone<span style="color:#0000CC;">+</span><span style="color:#FF00FF;">"&lt;br&gt;/n"</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#FF0000;">document</span><span style="color:#0000CC;">.</span><span style="color:#FF0000;">write</span><span style="color:#0000CC;">(</span>line1<span style="color:#0000CC;">,</span>line2<span style="color:#0000CC;">,</span>line3<span style="color:#0000CC;">,</span>line4<span style="color:#0000CC;">,</span><span style="color:#FF00FF;">"/n"</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span><br>
<span style="color:#0000CC;">}</span></span></code></p></td></tr></tbody></table><div><br></div><div>三.创建对象实例(用new关键字)</div><div><br></div><div>tom = new.Card("Tom Jones","123 Elm Street","555-1236","555-9876");</div><div>tom.PrintCard();执行方法</div><div><br></div><div>或</div><div><br></div><table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#999999" width="95%" bgcolor="#F1F1F1"><tbody><tr><td><p style="line-height: 150%; margin: 5px"><code><span style="color:#000000;">holmes <span style="color:#0000CC;">=</span> <span style="color:#0000FF;">new</span><span style="color:#0000CC;">.</span>Card<span style="color:#0000CC;">(</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span><br>
holmes<span style="color:#0000CC;">.</span><span style="color:#FF0000;">name</span> <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"Sherlock Holmes"</span><span style="color:#0000CC;">;</span><br>
holmes<span style="color:#0000CC;">.</span>address <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"221B Baker Street"</span><span style="color:#0000CC;">;</span><br>
holmes<span style="color:#0000CC;">.</span>workphone <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"555-1365"</span><span style="color:#0000CC;">;</span><br>
holmes<span style="color:#0000CC;">.</span>homephone <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"555-5454"</span><span style="color:#0000CC;">;</span><br>
<br>
holmes<span style="color:#0000CC;">.</span>Printcard<span style="color:#0000CC;">(</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span></span></code></p></td></tr></tbody></table><br><div><hr>扩展内置对象(扩展内置对象定义的功能,添加新的属性与方法)</div><div>(使用prototype关键字,可以对现有的对象添加属性与方法)</div><div><br></div><div>例:向String对象定义添加一个方法 创建新的名字heading的方法,将字符串转为HTML标题.</div><div><br></div><div>title = "Fred's Home Page";</div><div><br></div><div>下面语句将title字符串内容,作为HTML第一级标题:</div><div>documnet.write(title.heading(1));</div><div><br></div><div>向String对象添加方法具体如下:</div><div><br></div><div><br></div>
               
               
                <table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#999999" width="95%" bgcolor="#F1F1F1"><tbody><tr><td><p style="line-height: 150%; margin: 5px"><code><span style="color:#000000;"><span style="color:#0000CC;">&lt;</span><span style="color:#0000FF;">html</span><span style="color:#0000CC;">&gt;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000FF;">head</span><span style="color:#0000CC;">&gt;</span><span style="color:#0000CC;">&lt;</span><span style="color:#0000FF;">title</span><span style="color:#0000CC;">&gt;</span>Test of heading <span style="color:#FF0000;">method</span><span style="color:#0000CC;">&lt;</span><span style="color:#0000CC;">/</span><span style="color:#0000FF;">title</span><span style="color:#0000CC;">&gt;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000CC;">/</span><span style="color:#0000FF;">head</span><span style="color:#0000CC;">&gt;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000FF;">body</span><span style="color:#0000CC;">&gt;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000FF;">script</span> Langage<span style="color:#0000CC;">=</span><span style="color:#FF00FF;">"JavaScript"</span> <span style="color:#FF0000;">type</span><span style="color:#0000CC;">=</span><span style="color:#FF00FF;">"text/Javascript"</span><span style="color:#0000CC;">&gt;</span><br>
function addhead<span style="color:#0000CC;">(</span>level<span style="color:#0000CC;">)</span><span style="color:#0000CC;">{</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF;">html</span> <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"H"</span><span style="color:#0000CC;">+</span>level<span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#FF0000;">text</span> <span style="color:#0000CC;">=</span> this<span style="color:#0000CC;">.</span>toString<span style="color:#0000CC;">(</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#FF0000;">start</span> <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"&lt;"</span><span style="color:#0000CC;">+</span><span style="color:#0000FF;">html</span><span style="color:#0000CC;">+</span><span style="color:#FF00FF;">"&gt;"</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;stop <span style="color:#0000CC;">=</span> <span style="color:#FF00FF;">"&lt;/"</span><span style="color:#0000CC;">+</span><span style="color:#0000FF;">html</span><span style="color:#0000CC;">+</span><span style="color:#FF00FF;">"&gt;"</span><span style="color:#0000CC;">;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;return <span style="color:#FF0000;">start</span><span style="color:#0000CC;">+</span><span style="color:#FF0000;">text</span><span style="color:#0000CC;">+</span>stop<br>
<span style="color:#0000CC;">}</span><br>
String<span style="color:#0000CC;">.</span>prototype<span style="color:#0000CC;">.</span>heading <span style="color:#0000CC;">=</span> addead<span style="color:#0000CC;">;</span><br>
document<span style="color:#0000CC;">.</span>write<span style="color:#0000CC;">(</span><span style="color:#FF00FF;">"This is a heading 1"</span><span style="color:#0000CC;">.</span>heading<span style="color:#0000CC;">(</span>1<span style="color:#0000CC;">)</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span><br>
document<span style="color:#0000CC;">.</span>write<span style="color:#0000CC;">(</span><span style="color:#FF00FF;">"This is a heading 2"</span><span style="color:#0000CC;">.</span>heading<span style="color:#0000CC;">(</span>2<span style="color:#0000CC;">)</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span><br>
document<span style="color:#0000CC;">.</span>write<span style="color:#0000CC;">(</span><span style="color:#FF00FF;">"This is a heading 3"</span><span style="color:#0000CC;">.</span>heading<span style="color:#0000CC;">(</span>3<span style="color:#0000CC;">)</span><span style="color:#0000CC;">)</span><span style="color:#0000CC;">;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000CC;">/</span><span style="color:#0000FF;">script</span><span style="color:#0000CC;">&gt;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000CC;">/</span><span style="color:#0000FF;">body</span><span style="color:#0000CC;">&gt;</span><br>
<span style="color:#0000CC;">&lt;</span><span style="color:#0000CC;">/</span><span style="color:#0000FF;">html</span><span style="color:#0000CC;">&gt;</span></span></code></p></td></tr></tbody></table><div><br></div><div>定义 addhead()方法,作为新的字符串方法,定义函数后.使用prototype关键字将它添加为String对象的方法,然后,任何String对象都可以使用该方法来.</div>
页: [1]
查看完整版本: 创建对象