为什么Object.prototype.isPrototypeOf(Function)是true

本文出至(讨论): http://jsvm.org/forums/1947/ShowPost.aspx#1947


js 中 Object 和 Function 的关系是微妙的,他们互为对方的一个“实例”。
Function  instanceof  Object  和 Object  instanceof  Function  都是 true

1。我们可以认为 Object 是一个特殊的“类”,而这里的“类”即:function

于是便可以理解为: Object = function () {}  或 Object = new Function(); 即: Object 是 Function 的一个实例,所以,Object 原型链中便包含 Function.prototype,得出: Function.prototype.isPrototypeOf(Object)  为 true

2。同时,js中,所有对象(不包括js语言外部对象)都可视为是 Object 的一个实例, Function 不例外,Function.prototype 亦不例外,于是有Function = new Object();  Function.prototype = new Object(), 于是 Object.prototype.isPrototypeOf(Function)  和 Object.prototype.isPrototypeOf(Function.prototype) 都为 true 了

3。补充:Function 本身也是一个“类”,然而,所有“类”都是Funciton的实例,于是 Function instanceof Function; 为true。同时,所有对象都是 Object 类的实例,Object 本身也是一个对象,所有又有 Object instanceof Object 也为 true。另外,还可以认为 Funciton 类型是 Object  类型的一个“派生类”,class Function 继承了class Object ,是 class Object 的一个“子类”。

更多内容请查看:http://jsvm.org/forums/1947/ShowPost.aspx#1947

Unity 接入HybridCLR的点点滴滴,亲测三平台(PC、Android、WebGL)妥妥的。-问题分享 一入热更深似海啊,没有热更是真恼火啊,干啥啥不方便,动不动就得重新发包;说实在的,也是工作之余研究这个,在原有框架基础上接入这个热更,既要保持原有功能,还要支持热更,实实在在、断断续续搞了这么久,终于是接入并测通了,这一路是坎坎坷坷,下面把走过的弯弯绕绕记录下,希望对后来想接入的小伙伴有帮助吧。 阅读详情

相关推荐

用C++从零复刻Wordle:手把手教你实现命令行猜词游戏(含完整源码解析)

本文详细介绍了如何使用C++从零开始实现一个命令行版本的Wordle猜词游戏,包含完整的源码解析和核心模块设计。通过游戏逻辑控制器、单词库管理器等模块的构建,开发者可以学习C++实战技巧和性能优化方法,适合提升编程能力和游戏开发兴趣。

weixin_26763955的博客 334

Object.isPrototypeOf( )

Object.isPrototypeOf( ) 一个对象是否是另一个对象的原型     可用性 JavaScript 1.5; JScript 5.5; ECMAScript v3 语法 object.isPrototypeOf(o) 参数 o 任意对象。 返回值 如果object是O的原型,则返回true。如果o

u013571243的专栏 1290

数字蓝军智能体关键技术课题研究

本研究提出基于人工智能大模型技术构建智能数字蓝军智能体系统,旨在提升作战模拟推演的智能化水平。系统采用"大模型+小模型"混合架构,整合感知、决策、规划、学习等核心模块,实现动态、智能的作战方案生成。关键技术包括大模型与知识图谱融合、多智能体协同、战场态势数字化表示等。研究成果将形成可复用的垂直领域智能体框架,为军事训练提供智能化对抗平台。该系统不仅能模拟真实对手的决策行为,还能通过自我博弈持续进化,有效增强推演的真实性和对抗性。

weixin_49042442的博客 1549

【bug】Do not access Object.prototype method ‘hasOwnProperty‘ from target object,使用hasOwnProperty报错

解决 可以通过使用call()函数来调用不属于本身this对象的方法:person.hasOwnProperty.call()

jieweiwujie的博客 941

同花顺Supermind量化交易 技术面分析专题(一)-- 相似k线的形态验证与选股

W底”,“多头上涨”,“趋势回踩”,”上涨中继“这些都是常见的K线形态,以”上涨中继“为例,当股价快速上涨后,出现盘整形态而非顶部形态,预示股价还会进一步上涨,那么本节主要讲述”上涨中继”形态是否能够预测未来股价上涨,以及如何应用“上涨中继”形态,来快速选股。"相似K线"技术相比于传统的K线组合而言更具技术性,其还有较多的运用空间,比如:运用顶部形态来监控个股潜在的下跌风险,运用相似度来监控个股是否脱离大盘走势,研究各类形态的上涨预测能力,并应用于选股等等。第一步:选取一段标准的“上涨中继”形态K线图。

qq_22808537的博客 4551

AD学习笔记(一)基础认识

文章目录AD学习笔记第一讲 AD基础认识一、两库两图(分别对应下图)1、PCB图(pcbdoc)2、原理图(schdoc)3、原理图库(schlib)4、PCB库(pcblib)二、封装1、DIP封装2、LQFP封装三、绘制整体流程1、建立工程(PrjPcb)2、建立两库两图并保存整个工程(五次)3、从库中提取绘制原理图4、原理图导入pcb图5、根据原理图布线6、pcb图交由工厂打板 AD学习笔记 第一讲 AD基础认识 一、两库两图(分别对应下图) PCB图(pcbdoc) 原理图(schdoc) PCB库

qq_52465473的博客 6686

如何判断数组类型

在MDN中就比较了isArray和instanceof的区别,当Array.isArray()不可用的使用时还是比较推荐使用前面讲的第三种方法 Object.prototype.toString.call(obj)。其中对于对象和数组用typeof方法得到的结果都是object,这是因为在JavaScript中所有数据类型严格意义上都是对象,对象是对象,数组也是对象,显然用typeof是不能够判断出变量的类型是数组。注意:跨框架页面中的数组,在不同的框架中创建的数组不会相互共享其prototype属性。

qq_43532275的博客 513

基于STM32、HAL库的TLV320AIC3204IRHBR音频接口芯片驱动程序设计

* 开启所有数字部分 */#define TLV320AIC3204_REG_LEFT_HEADPHONE_OUT_VOLUME 0x0C /* 左声道耳机输出音量 */#define TLV320AIC3204_REG_DIGITAL_AUDIO_PATH_CONTROL 0x05 /* 数字音频路径控制 */#define TLV320AIC3204_REG_ANALOG_HP_FILTER_CONTROL 0x34 /* 模拟耳机滤波器控制 *//* 最大音量 */

corlin6688的博客 521

js中如何判断一个对象为数组

如何判断一个对象为数组? 1.可以使用typeof操作符判断当他遇到null类型和Array对象时都会判断为object console.log(typeof null); // object console.log(typeof [1,2,3]); // object console.log(typeof '这是一段字符串'); // string console.log(typeof 1); // number console.log(typeof a); // undefined conso

loveskin的博客 1427

openCv +3.4.0 车牌定位(C++版本)

#include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc.hpp> #include "opencv2/shape.hpp" using namespace ...

Bamboo265925的博客 2337

AI在智能制造中的落地:从预测维护到自适应生产调度

从最新的研究与实践来看,“预测维护”和“自适应生产调度”正在成为智能制造中最先跑通闭环的两个核心场景:前者通过对设备健康的前瞻性预测,帮助企业减少非计划停机、优化备件与维护资源;后者通过对复杂生产系统的实时决策优化,使工厂能够更好地应对订单波动、设备故障和多目标约束。更重要的是,越来越多的研究与项目不再将二者视为孤立模块,而是尝试构建“设备健康—生产调度—供应链”三者联动的一体化架构。Nature在技术层面,深度学习、强化学习、多智能体系统、图神经网络和注意力机制等方法,为建模复杂工业系统提供了强大工具;

nmdbbzcl的博客 1290

解决报错:Do not access Object.prototype method ‘hasOwnProperty‘ from target object no

解决报错:Do not access Object.prototype method 'hasOwnProperty' from target object no

薇z的博客 5514

巡检领域红外热成像相机镜头焦距选择方法总结

摘要:巡检机器人红外热成像相机镜头焦距的选择需综合考虑检测距离、视场角、目标分辨率等核心要素。短焦距(4-6mm)适用于室内近距离巡检,中焦距(12-19mm)适合变电站等中等距离场景,长焦距(25-50mm)则用于光伏板等远距离检测。选型需遵循焦距计算公式f=SL×d,确保目标占据≥3×3像元,同时考虑机器人安装空间、环境适应性及软件联动需求。建议通过样机实测或仿真软件验证选型合理性,以实现对设备故障的精准识别。

start_up_go的博客 299

正则替换问题 | jsvm暴露_package关键字,方便调试 2006-12-26

为什么Object.prototype.isPrototypeOf(Function)是true关键字: javascript 本文出至(讨论): http://jsvm.org/forums/1947/ShowPost.aspx#1947js 中 Object 和 Function 的关系是微妙的,他们互为对方的一个“实例”。Function  instanceof

cxzhq2002的杂记 632

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

jstutorial 标准库篇:JavaScript Object 对象完全指南——从工具函数到类型判断

`Object` 是 JavaScript 中最基础、最重要的原生对象,所有其他对象都继承自它,其原生方法分为直接定义在 `Object` 自身上的"静态方法"与定义在 `Object.prototype` 上的"实例方法"两大类。本篇指南基于 jstutorial 仓库的标准库章节,系统讲解 `Object` 作为工具函数与构造函数的用法、`Object.keys()` 等静态方法、`value

gitblog_00806的博客 871

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

你并不懂 JS:原型机制深度拆解 —— 从 `[[Prototype]]` 链、`new` 与 `.prototype` 到 `Object.create(..)` 委托设计

本篇技术指南以开源仓库 [this & object prototypes/ch5.md](https://link.gitcode.com/i/b444a8fd86612784a79626033203d166)(《You Don't Know JS》系列俄语译本第 5 章"Прототипы/原型")为骨架,系统讲解 JavaScript 内部机制 `[[Prototype]]`:属性查找如何在

gitblog_01048的博客 261

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JavaScript中isPrototypeOf函数详解

有时看一些框架源码的时候,会碰到 isPrototypeOf() 这个函数,那么这个函数有什么作用呢? isPrototypeOf() isPrototypeOf() 是 Object函数(类)的下的一个方法,用于判断当前对象是否为另外一个对象的原型,如果是就返回 true,否则就返回 false。 这个函数理解的关键是在原型链上,这个据说是JavaScript的三座大山之一。 这里不详述其中的原理,简单的来讲就是3点: 1. 函数对象,都会天生自带一个prototype原型属性。 2. 每一个对象也天生自

晴空闲云 4638

Object.prototype和Function.prototype一些常用方法

Object.prototype 方法: hasOwnProperty 概念:用来判断一个对象中的某一个属性是否是自己提供的(主要是判断属性是原型继承还是自己提供的) 语法:对象.hasOwnProperty('属性名') var o = { name: 'jim' }; function Person() { ...

weixin_33912638的博客 198

isPrototypeOf 和 istanceof 的 区别

(1)、isPrototypeOf 语法:对象.isPrototypeOf (实例对象) 作用:检测对象是否是实例对象的原型对象 注意:Person在创建实例对象之后,更换prototype。 (2)、instanceof ...

qq_36392571的博客 238

object方法_【JavaScript 教程】面向对象编程——Object 对象的相关方法

作者 | 阮一峰JavaScript 在Object对象上面,提供了很多相关方法,处理面向对象编程的相关操作。本章介绍这些方法。Object.getPrototypeOf()Object.getPrototypeOf方法返回参数对象的原型。这是获取原型对象的标准方法。var F = function () {};上面代码中,实例对象f的原型是F.prototype。下面是几种特殊对象的原...

weixin_39559804的博客 129

javascript isPrototypeOf()与getPrototypeOf()方法

关于isPrototypeOf()方法,在此我把前面讲的原型模式图中的代码直接拿过来用。我们先来看看isPrototypeOf()方法的语法:语法isPrototypeOf()函数用于指示对象是否存在于另一个对象的原型链中。如果存在,返回true,否则返回false。 function.prototype.isPrototypeOf(object)参数列表 参数 描述 functi

苦艾文艺 1685

matlab 判断变量是否存在_JS isPrototypeOf()方法:检测一个对象是否存在于另一个对象的原型链中...

JavaScript isPrototypeOf() 是 Object 的原型方法(也称实例方法),它定义在 Object.prototype 对象之上,所有 Object 的实例对象都会继承 isPrototypeOf() 方法。isPrototypeOf() 方法用来检测一个对象是否存在于另一个对象的原型链中,如果存在就返回 true,否则就返回 false。isPrototypeOf() 的...

weixin_35965051的博客 531

js--Object.prototype下的方法介绍和使用

hasOwnProperty   hasOwnProperty() 方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性      不考虑继承里的属性。 o = new Object(); o.prop = 'exists'; o.hasOwnProperty('prop'); // 返回 true o.hasOwnProperty('toString'); ...

我本名叫一休的博客 2158

深入解析hasOwnProperty与isPrototypeOf

这里采用一个实例来说明: 1 function Person(name) { 2 //以下都是Person的OwnProperty 3 this.name = name; 4 this.showMe = function () { 5 alert(this....

ayfxo22204的专栏 131

判断一个对象是否为函数的方法

本文介绍了JavaScript中判断对象是否为函数的四种方法: typeof运算符:返回"function"即为函数,简单但可能对宿主对象不准确。 instanceof运算符:检查原型链是否包含Function.prototype,跨窗口场景可能失效。 Object.prototype.toString.call():通过内部属性返回"[object Function]",准确但代码冗长。 Function.isFunction()(ES6+):语义清晰,推荐使用但需

你若盛开,清风自来 1270

typeof,instanceof和isPrototypeOf的介绍和区别

一、typeof typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型。它返回值是一个字符串,该字符串说明运算数的类型。 var a = 'a'; var b = null; console.log(typeof a); // String console.log(typeof b); //Object 二、instanceof 判断前者是否为后者的实例,换而言之,是...

qq_36470086的博客 1109
上一篇: jsvm暴露_package关键字,方便调试
下一篇: 使用动态代理实现精简版CachedRowSetImpl
chpn
博客等级 码龄22年 0粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值