Object和Function是函数,函数都有一个prototype属性

Object 和 Function 都是 JavaScript 自带的函数对象

在 JavaScript 中,万物皆对象,你要一个吗?new Object() 啊!

当然,就好比同样为人,也区分普通人和天才。

对象也是有分类的,分为 普通对象 和 函数对象。

而 Object 和 Function 都是 JavaScript 自带的函数对象。

复制代码
function fun1() {};

const fun2 = function() {};

const fun3 = new Function();



const obj1 = {};

const obj2 = new Object();

const obj3 = new fun1();



console.log(typeof Object); // function

console.log(typeof Function); // function



console.log(typeof fun1); // function

console.log(typeof fun2); // function

console.log(typeof fun3); // function   



console.log(typeof obj1); // object

console.log(typeof obj2); // object

console.log(typeof obj3); // object

在上面代码中,fun1、fun2、fun3 都是函数对象,obj1、obj2、obj3 都是普通对象。

原型对象

其中每个 函数对象 都有一个 prototype 属性,这个属性的指向被称为这个函数对象的 原型对象(简称原型)。

复制代码
function Person() {};

Person.prototype.name = 'jsliang';

Person.prototype.sayName = function() {

  console.log(this.name);

};



const person1 = new Person();

person1.sayName(); // jsliang



const person2 = new Person();

person2.sayName(); // jsliang



// 这两个实例对应的原型方法 sayName 都是一样的

console.log(person1.sayName === person2.sayName); // true

参考:jsliang 求职系列 - 02 - 原型与原型链 - 掘金

相关推荐
破茧蝴蝶7 小时前
Python分布式爬虫完整教程
开发语言·python
狗凯之家源码网7 小时前
全新 PHP 轻量客服聊天室源码深度评测
开发语言·php·聊天室系统
远离UE47 小时前
UE5 Substrate Thin Film 源码拆析
开发语言·javascript·ue5
keyipatience7 小时前
JavaScript学习(1)书写位置,变量、数据类型、运算符
开发语言·前端·javascript·css·学习
栈帧之外8 小时前
【C++】STL之set
开发语言·c++
catchadmin9 小时前
免费可商用 PHP 管理后台 CatchAdmin V5.4.1 发布,新增 MCP 支持
开发语言·php
jimy110 小时前
c++的 Type Traits (二、更详细版本)
开发语言·c++
狗凯之家源码网10 小时前
纯 PHP+MySQL 应用市场系统源码实测!
开发语言·mysql·php
dishugj11 小时前
系统架构风险点、敏感点和权衡点的概念和区分
java·开发语言
geovindu11 小时前
rust:Memento Pattern(续)
开发语言·后端·设计模式·rust·行为模式·备忘录模