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中的继承







相关推荐
曹牧4 小时前
C#:ToDouble
开发语言·c#
绝美焦栖4 小时前
低版本pdfjs升级
前端·javascript·vue.js
袁袁袁袁满4 小时前
Python读取doc文件打印内容
开发语言·python·python读取doc文件
zcfeng5304 小时前
PHP升级
开发语言·php
迦南giser4 小时前
webpack从0到1详解
前端·javascript·css·webpack·node.js
xkxnq4 小时前
第二阶段:Vue 组件化开发(第 26天)
前端·javascript·vue.js
m0_748252384 小时前
Ruby 模块(Module)的基本概念
开发语言·python·ruby
羊小猪~~4 小时前
【QT】-- QT基础类
开发语言·c++·后端·stm32·单片机·qt
小救星小杜、4 小时前
el-form 表格校验 开始和结束时间,时间选择范围
javascript·vue.js·elementui
克里斯蒂亚诺更新4 小时前
使用elementUI的表格报错ResizeObserver loop completed with undelivered notifications.
前端·javascript·elementui