2017-02-24 50 views
-3

我有一個包含的JavaScript這樣的(並且它不能編輯)的JavaScript執行函數內部函數直接調用

db.profile.loadInitProperties({ 
    "url": "http://www.google.com", 
    "path": "/search", 
    "temp": true, 
}); 

,所以我讓我自己的功能,使其工作,但不是運氣。

function db(profile) { 
    this.profile = function (properties) { 
     this.properties = function (string) { 
      //do sth 
     } 
    } 
} 

總是得到"TypeError: db.profile.properties is not a function"

有沒有辦法讓它工作?

+2

你想要做什麼?你的意思是什麼(不能被編輯)? – spankajd

+0

您是否正在創建一個[Javascript中的類](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes)?我同意@spankajd - 這個問題很模糊,我很難理解你到底在找什麼...... –

+0

即時通訊javascript對不起。 @anied我只是想從 db.profile.loadInitProperties(這個代碼我包括從另一個域,所以我沒有permision編輯)的信息。 也許創建類或對象與該調用相匹配,但我不知道如何。 –

回答

0

在JavaScript中,一個類基本上是一個函數。如果你有一個函數,並且你想用它作爲一個對象而不是一個函數,那麼你首先需要新建一個對象。

function db(profile){ 
    this.profile = profile; 
} 
var _db = new db(profile); 
console.log(_db.profile); 

如果你只調用db.profile,這將不起作用。

+0

需要回復。但我所需要的是在db.profile.loadInitProperties運行時獲取信息。但不知道如何實施 –