js基础之-如何理解js中一切皆对象的说法





**

js中哪些对象会自动带有prototype属性??

**

如何判断关键点是: prototype 属性只存在于可能作为构造函数的函数上。如果函数不能/不应该使用 new 调用(如箭头函数),就没有 prototype 属性

1.在js中只有函数,特别是构造函数会自动获得prototype属性,

比如


2.不会自动生成的 prototype的情况



**

2.js中为什么没有prototype属性的函数不能new

**

简单来说:new操作符在执行时需要读取函数的prototype属性,将其作为新对象的原型。如果没有一个函数没有这个属性,new就失去了为对象建立原型链的关键依据,从而无法正常工作.

理解 new 到底干了啥

问题的核心:如果没有 F.prototype,引擎就不知道新对象应该继承什么。

**

3.不能new就 不new, 我们为什么需要new 呢

**



**

4.假设js语言中没有了 new 会怎么样的

**




**

5.普通对象{},数组[],函数function(){},他们的原型有啥区别

**

这是一个非常核心的问题。简单来说:普通对象、数组和函数都有不同的直接原型(proto 或 [[Prototype]]),这些原型赋予了它们独特的能力,但最终通过原型链都指向同一个终点------Object.prototype。



jjjjjj

js中的继承







相关推荐
無限進步D2 小时前
Java 运行原理
java·开发语言·入门
是苏浙2 小时前
JDK17新增特性
java·开发语言
阿里加多5 小时前
第 4 章:Go 线程模型——GMP 深度解析
java·开发语言·后端·golang
likerhood5 小时前
java中`==`和`.equals()`区别
java·开发语言·python
小李子呢02116 小时前
前端八股性能优化(2)---回流(重排)和重绘
前端·javascript
zs宝来了6 小时前
AQS详解
java·开发语言·jvm
telllong7 小时前
Python异步编程从入门到不懵:asyncio实战踩坑7连发
开发语言·python
吴声子夜歌8 小时前
Vue3——Vue实例与数据绑定
前端·javascript·vue.js
wjs20248 小时前
JavaScript 条件语句
开发语言
阿里加多8 小时前
第 1 章:Go 并发编程概述
java·开发语言·数据库·spring·golang