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 - 原型与原型链 - 掘金

相关推荐
泯泷5 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
hold?fish:palm5 小时前
34 合并K个升序链表
javascript·算法·链表
C++ 老炮儿的技术栈6 小时前
我们在设计tcp协议时,要传一个字符串过去,报文:头十长度十内容,是否要把‘\0‘也填入,长度是否包含‘\0‘
开发语言·数据结构·c++·mfc·c
传奇开心果编程6 小时前
【Rust入门练中学】第2课:变量、可变性与常量
开发语言·学习·rust
zr想努力6 小时前
从0开始配置Perforce4环境
开发语言
幸运小圣8 小时前
PointerEvent 常用属性与事件整理【JavaScript】
开发语言·javascript·ecmascript
长谷深风1118 小时前
评测AI Agent:三种裁判各司其职
java·大数据·开发语言·人工智能·ai agent
边境悍匪8 小时前
蜗牛学苑 Java 智能体学习 Day42|项目周开发技术汇总 1 思维导图复盘
java·开发语言·spring boot·学习·spring
君顾19 小时前
本地托管机构管理源码实战:需求拆解、数据建模与多端部署
java·开发语言·托管
志尊宝9 小时前
Vue3 零基础每日笔记(038):亲手封装 useDebounceFn 与 useThrottleFn——高频事件的流量阀
前端·javascript·vue·html·vue3