2016-08-18 71 views
1

非常基本的問題,但在這樣的情況下,基本查詢...約鏈職能

const myVariable = GenericObject.myMethod().brand.toUpperCase()

會是什麼.brand被提及...即。這個「鏈式功能」究竟如何融合在一起?

您可以假設myMethod返回一個空對象。

感謝

+1

它看起來像'brand'是一個字符串。但它不可能,因爲它是一個空的對象,所以它將是'未定義的'。 –

+0

品牌看起來像myMethod的一個屬性。雖然 –

+0

如果'myMethod()'返回一個空對象,那麼代碼將拋出一個異常並且不起作用。 – Pointy

回答

1

這可能是這樣的

function GenericObject() { } 
 

 
GenericObject.myMethod = function() { 
 
    return { 
 
     brand: 'string' 
 
    }; 
 
} 
 

 
console.log(GenericObject.myMethod().brand.toUpperCase());

或者

var GenericObject = { 
 
    myMethod: function() { 
 
     return { 
 
      brand: 'string' 
 
     }; 
 
    } 
 
}; 
 

 
console.log(GenericObject.myMethod().brand.toUpperCase());

1

的意見給你的答案很簡單:

brand指的是什麼,從myMethod()返回。如果它是一個空對象,它將很難在其中找到屬性brand

你可以閱讀更多關於鏈接here。這是一個簡單而清晰的解釋(並不是很長)。