zoukankan      html  css  js  c++  java
  • [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
    

  • 相关阅读:
    软件测试 Lab1 实验报告
    软件测试 Homework2
    谈谈最近的一个让我印象深刻的错误
    Bill Manager Problem Statement
    C#学习记录(九)Windows Phone开发中的Binding
    C#学习记录(八) XML Serializer尝试
    C#学习记录(七)LINQ语句及LAMDA表达式
    C#学习记录(六)
    软件测试之作业三
    软件测试之实验一
  • 原文地址:https://www.cnblogs.com/Answer1215/p/14367450.html
Copyright © 2011-2022 走看看