JS之建立对象的方法

2019-04-04 07:58:19来源:爱站网 阅读 ()

新老客户大回馈,云服务器低至5折

无论是什么语言,不断变化的语言都离不开它的起源,只有深刻理解它的本质,才能自由运用,感兴趣的小伙伴们可以和爱站技术频道小编一起来参考一下JS之建立对象的方法吧!

Objects?are?useful?to?organize?information.
对于组织信息来讲对象是非常有用的?

JavaScript?Objects
JS对象
Earlier?in?this?tutorial?we?have?seen?that?JavaScript?has?several?built-in?objects,?like?String,?Date,?Array,?and?more.?In?addition?to?these?built-in?objects,?you?can?also?create?your?own.
在教程的前面部分我们已经看过JS有一些内置的对象,像String,Date,Array和更多一些。除此之外我们可以建立属于自己的对象。

An?object?is?just?a?special?kind?of?data,?with?a?collection?of?properties?and?methods.
对象是特殊的数据,有着相关的一系列属性和方法。

Let's?illustrate?with?an?example:?A?person?is?an?object.?Properties?are?the?values?associated?with?the?object.?The?persons'?properties?include?name,?height,?weight,?age,?skin?tone,?eye?color,?etc.?All?persons?have?these?properties,?but?the?values?of?those?properties?will?differ?from?person?to?person.?Objects?also?have?methods.?Methods?are?the?actions?that?can?be?performed?on?objects.?The?persons'?methods?could?be?eat(),?sleep(),?work(),?play(),?etc.
让我们说明一个例子:一个人为一个对象。属性就是与对象关联的值。人的属性包含名字,身高,体重,年龄,肤色,眼睛的颜色等等。所有人都有这些属性,但是值却可能人与人都不同。对象还有方法。方法就是对象的动作行为。人的方法就可以是eat()[吃],sleep()[睡觉],work()[工作]等等。

Properties属性
The?syntax?for?accessing?a?property?of?an?object?is:
关联一个对象的属性语法为:

objName.propName?

You?can?add?properties?to?an?object?by?simply?giving?it?a?value.?Assume?that?the?personObj?already?exists?-?you?can?give?it?properties?named?firstname,?lastname,?age,?and?eyecolor?as?follows:
你可以通过赋值来给对象添加属性。假设personObj已经存在?-?你可以给对象添加姓和名以及下面的年纪和眼睛颜色:

personObj.firstname="John"

personObj.lastname="Doe"
personObj.age=30
personObj.eyecolor="blue"document.write(personObj.firstname)?

The?code?above?will?generate?the?following?output:
上面的代码就会输出:

John?

Methods方法
An?object?can?also?contain?methods.
一个对象还可以包括方法

You?can?call?a?method?with?the?following?syntax:
你可以用下面的语法来调用一个方法:

objName.methodName()?

Note:?Parameters?required?for?the?method?can?be?passed?between?the?parentheses.
方法所需要的参数写在括号之间

To?call?a?method?called?sleep()?for?the?personObj:
为personObj对象调用一个sleep()方法

personObj.sleep()?


--------------------------------------------------------------------------------

Creating?Your?Own?Objects
建立你自己的对象
There?are?different?ways?to?create?a?new?object:
建立新的对象有两种不同的方法

1.?Create?a?direct?instance?of?an?object
直接建立

The?following?code?creates?an?instance?of?an?object?and?adds?four?properties?to?it:
下面的代码可以直接建立一个对象并给它加上四个属性:

personObj=new?Object()
personObj.firstname="John"

personObj.lastname="Doe"
personObj.age=50
personObj.eyecolor="blue"?

Adding?a?method?to?the?personObj?is?also?simple.?The?following?code?adds?a?method?called?eat()?to?the?personObj:
给对象建立一个方法也十分的简单。下面的代码就加了一个eat()方法

personObj.eat=eat?

2.?Create?a?template?of?an?object
建立一个对象模块

The?template?defines?the?structure?of?an?object:
模块定义对象的构架

function?person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname
this.lastname=lastname
this.age=age
this.eyecolor=eyecolor
}?

Notice?that?the?template?is?just?a?function.?Inside?the?function?you?need?to?assign?things?to?this.propertyName.?The?reason?for?all?the?"this"?stuff?in?is?that?you're?going?to?have?more?than?one?person?at?a?time?(which?person?you're?dealing?with?must?be?clear).?That's?what?"this"?is:?the?instance?of?the?object?at?hand.
注意模块只是一个函数,函数里面你需要给this.propertyName分配东西。所有都是"this"的原因是你接下来会一下子有不止一个person(是哪个person你必须清楚)。

Once?you?have?the?template,?you?can?create?new?instances?of?the?object,?like?this:
一旦你有了模块,你就可以这样直接建立新的对象了:

myFather=new?person("John","Doe",50,"blue")
myMother=new?person("Sally","Rally",48,"green")?

You?can?also?add?some?methods?to?the?person?object.?This?is?also?done?inside?the?template:
你也可以加一些方法给person对象,这也可以在模块里完成:

function?person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname
this.lastname=lastname
this.age=age
this.eyecolor=eyecolorthis.newlastname=newlastname
}?

Note?that?methods?are?just?functions?attached?to?objects.?Then?we?will?have?to?write?the?newlastname()?function:
注意,这个方法只是对象的附加函数,接下来我们将必须写入newlastname()函数

function?newlastname(new_lastname)
{
this.lastname=new_lastname
}?

The?newlastname()?function?defines?the?person's?new?last?name?and?assigns?that?to?the?person.?JavaScript?knows?which?person?you're?talking?about?by?using?"this.".?So,?now?you?can?write:?myMother.newlastname("Doe").
newlastname()函数定义了person的新last?name并分配给了person。使用"this"的话JS会明白你在描述哪个person。所以现在你可以写:myMother.newlastname("Doe")?
以上就是JS之建立对象的方法?,更多的内容请继续关注爱站技术频道的其它相关文章吧,感谢大家对爱站技术频道网的支持!


原文链接:https://js.aizhan.com/develop/JavaScript/5151.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:关于vue-router 中参数传递的那些坑(params,query)

下一篇:教你html读出文本文件内容的方法