JavaScript 对象原型

admin2年前 (2023-07-06)it知识388

前面有一章提到无法为已有的对象构造器添加新属性

Person.nationality = "English";  //得到的是undefined

如需向构造器添加一个新属性,则必须把它添加到构造器函数。

function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
    this.nationality = "English";
}

所有的javascript 对象都是重原型集成属性和方法。

日期对象继承自Date.prototype。数组对象继承自Array.prototype。 Person 对象继承自Person.prototype.

Object.prototype位于原型继承链的顶端:

日期对象,数组对象和Person对象都继承自 Object.prototype。

向对象添加属性和方法

有时,想向所有给定类型的已有对象添加属性(或方法)。

有时,想向对象构造器添加新属性(或方法)。

使用prototype 属性

javascript  prototype 属性允许您为构造器添加新属性,新方法

function Person(first, last, age) {
         this.firstName = first;
         this.lastName = last;
         this.age = age;
}
Person.prototype.nationality = "USA"; 
Person.prototype.name = function() {
    return this.firstName + " " + this.lastName;
};


标签: JavaScript
返回列表

上一篇:在树林里

下一篇:《细绳》原文

相关文章

JavaScript 数据类型

javascript 变量可以保存多种数据类型:数值、字符串值、数组、对象var x;   // x是undefined var leng...

JavaScript 可迭代对象

可迭代对象时可以使用for..of 进行迭代的对象从技术上讲,可迭代对象必须实现Symbol.iterator方法。遍历字符串你可以使用for..of循环来遍历字符串的元素:for(const&nbs...

JavaScript 的核心是 ECMAScript

JavaScript 的核心是 ECMAScript,具体来说,它包括以下几个方面:语法:JavaScript 的语法包括语句结构、变量定义、函数定义、条件语句、循环语句等。ECMAScript 标准...

JavaScript Set

JavaScript的Set(集合)是一组唯一值的集合。每个值只能在Set中出现一次。Set可以容纳任何数据类型的值。如何创建Set将数组传递给new Set()创建一个新的Set, 然后使用add(...

Vue 报错error:0308010C:digital envelope routines::unsupported 解决方案

Error: error:0308010C:digital envelope routines::unsupported出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。