yygmind / blog

我是木易杨,公众号「高级前端进阶」作者,跟着我每周重点攻克一个前端面试重难点。接下来让我带你走进高级前端的世界,在进阶的路上,共勉!

Home Page:https://muyiy.cn/blog/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

> 我用原生的bind试了obj.**proto**.friend = "Kitty"; // 修改原型

lonkang opened this issue · comments

我用原生的bind试了obj.proto.friend = "Kitty"; // 修改原型
bar.prototype.friend; // 返回错误,这里被修改了// Kitty
发现也是会修改的,这个我有点蒙了哈
{friend: "Kitty", constructor: ƒ}
paste.html:68 {friend: "Kitty", constructor: ƒ},打印出来是一样的东西

var Foot = bar.bind(foo, "Jack")
var a = new Foot(20);
a.proto.friend = "Kitty"; // 修改原型
console.log(bar.prototype.friend)
console.log(bar.prototype)
console.log(a.proto)

我也试了一下,不懂为啥会说是返回错误,原生的bind 也修改了原型,那这里出错的原因,作者也没有解释

Originally posted by @Pomelo1213 in #23 (comment)

我也觉得 哈哈