我是一個 JavaScript 初學者。我試圖對使用類創建的物件運行呼叫函式。我期望輸出 - “Virat Kohli”,代碼如下:
class person {
constructor(firstName,lastName){
firstName = this.firstName;
lastName = this.lastName
}
}
perFullName = {
fullName : function(){
return this.firstName " " this.lastName;
}
}
const vk = new person("Virat","Kohli");
console.log(perFullName.fullName.call(vk))
但這undefined undefined在我的 VS 代碼控制臺中回傳了我,但是當我替換它并創建這樣的物件時:
const vk = {
firstName : "Virat",
lastName : "Kohli"
}
它回傳了預期的輸出。
您能告訴我原因以及如何解決嗎?
uj5u.com熱心網友回復:
建構式中的變數賦值是從后到前的,它們應該將輸入值賦給成員變數。
您的fullName函式可以作為只讀屬性獲取器移動到類中:
class person {
constructor(firstName, lastName){
this.firstName = firstName;
this.lastName = lastName
}
get fullName() {
return this.firstName " " this.lastName;
}
}
const vk = new person("Virat", "Kohli");
console.log(vk.fullName);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/447650.html
標籤:javascript 目的
