一個對象,我必須這樣做:工作過度的字符串,我會問到一些用戶:遍歷在JavaScript
text = "";
arr = ["*****"];
arr2 = [];
text = arr.toString();
for(i=0; i<text.length; i++) {
arr2.push(text[i]);
}
---> arr2 = [*,*,*,*,*] <--- thats what i want!.
但我必須有很多像這樣的數據的工作,所以我創建和數組這些內容的結構化數據:
var gems = [
{
name: 'Level-1',
row: {
r1: '*****',
r2: '-***-',
r3: '--*--'
},
canPushtoDb: true,
hideLevel: false,
status: 1
//canvas
},
{
name: 'Level-2',
row: {
r1: '**-**',
r2: '-*-*-',
r3: '-***-',
},
canPushtoDb: true,
hideLevel: false,
status: 1
//canvas
},
{
name: 'Level-3',
row: {
r1: '*-*-*',
r2: '**-**',
r3: '*-*-*'
},
canPushtoDb: true,
hideLevel: true,
status: 1
//canvas
}
];
我想內gems
循環到字符串轉換在某些類型的數組,就像我在這個問題上的開頭寫道。 我正在看一個Angular示例,它用controller
包裝這些對象。
但現在我很遠得到我的代碼在他自己的一些重構版本。我只需要一些硬編碼的函數或方法,如gems.name[0].row.r1
(這對我來說並不奏效!)就可以將所有我正在處理的對象拋出。
這將是'寶石[0] .row.r1'不'gems.name [0] .row.r1' –
你應該訪問他們像'寶石[0] .row.r1'。從字符串的字符創建數組:'var arr = str.split('')'; –
你可以用'array.fill'解決你的第一部分問題。 'var arr2 = new Array(tet.length).fill('*')' – Rajesh