ఇక్మాస్క్రిప్ట్ ఆబ్జెక్ట్ ఆర్ట్ టెక్నాలజీ

ఆప్లికేషన్ ఆబ్జెక్ట్ టెర్మినాల్

对象

ECMA-262 把对象(object)定义为“属性的无序集合,每个属性存放一个原始值、对象或函数”。严格来说,这意味着对象是无特定顺序的值的数组。

尽管 ECMAScript 如此定义对象,但它更通用的定义是基于代码的名词(人、地点或事物)的表示。

每个对象都由类定义,可以把类看做对象的配方。类不仅要定义对象的接口(interface)(开发者访问的属性和方法),还要定义对象的内部工作(使属性和方法发挥作用的代码)。编译器和解释程序都根据类的说明构建对象。

实例

程序使用类创建对象时,生成的对象叫作类的实例(instance)。对类生成的对象的个数的唯一限制来自于运行代码的机器的物理内存。每个实例的行为相同,但实例处理一组独立的数据。由类创建对象实例的过程叫做实例化(instantiation)。

在前面的章节我们提到过,ECMAScript 并没有正式的类。相反,ECMA-262 把对象定义描述为对象的配方。这是 ECMAScript 逻辑上的一种折中方案,因为对象定义实际上是对象自身。即使类并不真正存在,我们也把对象定义叫做类,因为大多数开发者对此术语更熟悉,而且从功能上说,两者是等价的。

ఆధార ఆధారిత భాషల అవసరాలు

ఒక ఆధార ఆధారిత భాషకు డెవలపర్లకు నాలుగు ప్రాథమిక సామర్థ్యాలు అవసరం ఉంటాయి:

  1. ఏకీకరణ - సంబంధిత సమాచారాన్ని (సమాచారం లేదా పద్ధతులు) ఆబ్జెక్ట్ లో నిల్వ చేయడానికి సామర్థ్యం
  2. అసెంబ్లేషన్ - ఒక ఆబ్జెక్ట్ ను మరొక ఆబ్జెక్ట్ లో నిల్వ చేయడానికి సామర్థ్యం
  3. పరివర్తన - మరొక క్లాస్ (లేదా పలు క్లాసులు) నుండి క్లాస్ లను అందుకోవడానికి సామర్థ్యం
  4. బహురూపత్వం - పలు విధాలుగా పనిచేయగల ఫంక్షన్లు లేదా పద్ధతులు రాయడానికి సామర్థ్యం

ఇక్మాస్క్రిప్ట్ ఈ అవసరాలను మద్దతు ఇస్తుంది, కాబట్టి దానిని ఆధార ఆధారితంగా చూడవచ్చు.

ఆబ్జెక్ట్ నిర్మాణం

ఇక్మాస్క్రిప్ట్ లో, ఆబ్జెక్టులు అటీర్బ్యూట్లు ద్వారా నిర్మించబడతాయి, అటీర్బ్యూట్లు ప్రాథమిక విలువలు లేదా పరిచయాలు కావచ్చు. అటీర్బ్యూట్లు ఫంక్షన్లు నిర్వహించినట్లయితే, అది ఆబ్జెక్ట్ మెథడ్స్ అని పరిగణించబడుతుంది, లేకపోతే అటీర్బ్యూట్లు ఆబ్జెక్ట్ ప్రాపర్టీస్ అని పరిగణించబడుతుంది.