簡體   English   中英

在對象屬性由另一個函數分配后訪問

[英]Access object properties after they are assigned by another function

我是Java語言的新手,並且正在學習如何使用OOP主體。 我被困在分配對象屬性,然后再訪問它們。 假設我有此函數,可將屬性分配給對象“ Car”。

function assignProps()
{
Car.size="small";
Car.cost="expensive";
}

具有空屬性的對象Car,因為它們是從函數分配的。

var Car =
{
size:"",
cost:"",
returnSize: function()
            {
           return this.size;
            },
returnCost: function()
            {
           return this.cost;
            },

}

現在,我想調用分配值的函數,然后訪問Car的屬性。 我嘗試這樣做,但顯然失敗了:

function accessProps()
{

assignProps();
console.log(Car.returnSize());
console.log(Car.returnCost());

}

任何幫助,將不勝感激。 我感覺這可能與構造函數或原型有關,但是由於有許多方法可以在Javascript中創建自定義對象,因此文檔非常混亂。

編輯:“失敗”是指它輸出空白而不是新分配的值。編輯:我也嘗試過這種方式,並且產生了相同的結果。

您的代碼中有一些錯誤:

var Car = {
   size:"",
   cost:""
}

如果您看這個小提琴: http : //jsfiddle.net/JskBy/它將按預期工作。

完整代碼:

function assignProps() {
    Car.size="small";
    Car.cost="expensive";
}

var Car ={
    size:"",
    cost:""
}
function accessProps(){
  assignProps();
  console.log(Car.size);
}

assignProps();
accessProps();

汽車對象初始化時出現語法錯誤,應為

var Car = { size: "", cost: "" };

第18行,第14列:逗號。

第20行,第2欄:缺少分號。

嘗試獲得帶有內置JSLint / JSHint的開發工具(例如,帶有附加組件的Notepad ++),它可能會幫助您解決此類調試問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM