[Javascript] Link to Other Objects through the JavaScript Prototype Chain (Object.setPrototypeOf())
Objects have the ability to use data and methods that other objects contain, as long as it lives on the [[prototype]] chain. In this lesson we’ll test this out by adding properties and working with this linkage of properties.
Objects in JavaScript give us the ability to create key and value pairs. In this example, we've got an object here called obj with the firstName property. We console.log firstName. We see that we get Tyler.
const obj = {
firstName: 'Tyler'
}
console.log(obj.firstName) // Tyler
As you probably expect, if we were to look up a property that did not exist on our object, we'll get an undefined back, which is true for all cases where the property is not on the object, unless that property lives somewhere on the prototype chain.
const obj = {
firstName: 'Tyler'
}
console.log(obj.lastName) // undefined
But you still able to get toString()
method, that's is because toString()
exists on prototype chain, __proto__
.
Now, let's create a new object called protoObj. We'll give it the property of lastName, with the value of string of Clark, then we'll say Object.setPrototypeOf(obj, protoObj)
As the name suggests, we are setting the prototype or the next inline chain object of object to be proto object.
const obj = {
firstName: 'Tyler'
}
const protoObj = {
lastName: 'Clark'
}
Object.setPrototypeOf(obj, protoObj)
console.log(obj.lastName) // Clark
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2018-02-03 [Angular + TsLint] Disable directive selector tslint error
2018-02-03 [Angular] Create a ng-true-value and ng-false-value in Angular by controlValueAccessor
2018-02-03 [AngularJS] ng-ture-value & ng-false-value
2018-02-03 [Typescript] Installing Promise Type Definitions Using the lib Built-In Types
2017-02-03 [NPM] Run a set of similar npm scripts with a wildcard
2017-02-03 [NPM] Use a shorthand syntax for running multiple npm scripts with npm-run-all
2017-02-03 [NPM] Run npm scripts in parallel