我有一个非常简单的问题,但是我解决不了,我想把服务中的数据切碎,然后丢到数组中,但是我不能让它成为我想要的,无论是使用属性还是数组。
示例文本:abc~sdfgsdg|def~dgdfgdf|cvx~fgdfgfdh|
示例代码:
let exampleText: string = 'abc~sdfgsdg|def~dgdfgdf|cvx~fgdfgfdh|'
let test: [string, string][];
let test2 = exampleTest.split('|');
test2.forEach(element => {
let test3 = element.split('~');
let t6 = test3[0]
let t8 = test3[1]
test.push(t6,t8)
});
错误:Argument of type 'string' is not assignable to parameter of type '[string, string]'.ts(2345)
另一个道:
let exampleText: string = 'abc~sdfgsdg|def~dgdfgdf|cvx~fgdfgfdh|'
let test: [Pro1:string,Pro2:string];
let test2 = exampleTest.split('|');
test2.forEach(element => {
let test3 = element.split('~');
let t6 = test3[0]
let t8 = test3[1]
test.push(t6,t8)
});
错误:TypeError: Cannot read properties of undefined (reading 'push')
我想要的结果是:
console.log(test[0][0]) //print 'abc'
console.log(test[0][1]) //print 'sdfgsdg'
console.log(test[1][0]) //print 'def'
console.log(test[1][1]) //print 'dgdfgdf'
或者
console.log(test[0].Pro1) //print 'abc'
console.log(test[0].Pro2) //print 'sdfgsdg'
console.log(test[1].Pro1) //print 'def'
console.log(test[1].Pro2) //print 'dgdfgdf'
1条答案
按热度按时间3qpi33ja1#
首先,你需要初始化
test
数组,否则,你就无法推入它。test
包含大小为2的string
元组。将string
推入其中将不起作用。您需要构造一个由t6
和t8
组成的元组并将其推入。Playground