我創建了一個資料共享函式,一個傳遞變數,一個將這些值作為物件獲取,如下所示。
var paramsObj = {};
var dataShareProvider = () => {
return {
getProperty: function () {
return {
paramsObj,
};
},
setProperty: function (pKey1, pKey2, pKey3, pKey4, pKey5) {
paramsObj.pKey1 = pKey1;
paramsObj.pKey2 = pKey2;
paramsObj.pKey3 = pKey3;
paramsObj.pKey4 = pKey4;
paramsObj.pKey5 = pKey5;
},
};
};
這就是我從函式設定屬性值的方式。
dataShareProvider().setProperty(7, "active", true);
我可以訪問它的另一個功能如下
var userData = dataShareProvider().getProperty().paramsObj;
console.log(userData)
我在訪問物件的值方面需要一點幫助。在我的瀏覽器控制臺中,值如下

我需要使用 pKey1、pKey2 和 pKey3 的值。我在下面嘗試過,但它給了我未定義的
console.log(userData.pKey1) ==> undefined
uj5u.com熱心網友回復:
嘗試一下:
var paramsObj = {};
var dataShareProvider = () => {
return {
getProperty: () => window.paramsObj,
setProperty: (...pKey) => pKey.forEach((value, index) => window.paramsObj[`pKey${index 1}`] = value)
}
};
dataShareProvider().setProperty(7, "active", true);
const userData = dataShareProvider().getProperty();
console.log("pKey1: ", userData.pKey1) // output: 7
console.log("pKey2: ", userData.pKey2) // output: "active"
console.log("pKey3: ", userData.pKey3) // output: true
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/364773.html
標籤:javascript 目的
