JS 的 instanceof 原型链判断错误!
发布于 6 年前 作者 shenchao 7859 次浏览 来自 问答

奇奇怪怪的环境问题,直接看图吧。

10 回复

依赖的,所以你们自己也加上12楼的trick吧。

这个限制我们应该不会调整,估计只有改一下依赖库的代码了。

请问你需要用这个语句做什么吗?

你好,这里Function应该是个特例。

好的,这个问题加进开发者文档中吧

或者你试下这个trick:

a = function(){ return ‘aaa’ }

Object.setPrototypeOf(a, Function.prototype)
a instanceof Function // === true

好的。之后我们会在基础库里面做这个修正。如果有问题,欢迎继续反馈。

其实JS内置的Function对象是被覆盖掉了的(出于安全的考虑)。instanceof作用于别的对象应该是没问题的。

那这里你们可以在app.js里面加一个trick试试:

Function.prototype = Object.getPrototypeOf(function(){})

基础库修正之后,依赖微信客户端发版吗?还是灰度修复已有的所有版本?

回到顶部