将没有键的值推送到 javascript 数组
Push values without keys to javascript array
在 react-native 中,我试图将值从下面的代码推送到一个没有键的数组,因为我正在使用的组件 (react-native-table-component) 只接受一个字符串或数字数组,而不是具有键值对的对象。我快要弄清楚了,但我被卡住了!
response.data
的结构
response.data = {
"Hours": 234,
"Minutes": 343,
"Days": 23,
"Months": 4
}
接收response.data并推送到数组的代码
toScreenTwo = async () => {
const { isLoggedIn, user} = this.state;
try {
if (!isLoggedIn) {
const response = await http.post('/v1/signup/user', {
user,
})
for (var value in response.data) {
this.state.tableData2.push(value);
}
console.log('response', this.state.tableData2);
}
await this.setState({
modalVisible: false,
friendsModalVisible: false
});
} catch(err) {
console.log("error ", err);
}
}
当前代码结果
上面的代码目前仅将键推送到数组 tableData2 而我只想将值推送到数组 tableData2
react-native-table-组件接受的数组格式
tableData: [
['1', '2', '3'],
['a', 'b', 'c'],
['1', '2', '3'],
['a', 'b', 'c']
]
react-native-table-component 似乎需要传递一个至少嵌套一个数组的数组
错误
如果有人有什么建议那就太好了!
假设这个 response.data
是一个包含如下数据的对象:
{
key: 1,
key2, "Ele", and so on.
}
您可以使用函数 Objec.values
获取值数组 [1, "Ele"]
并使用函数 apply
将这些值作为参数传递给函数 push
。
let values = Object.values(response.data);
Array.prototype.push.apply(this.state.tableData2, values);
此代码片段稍微解释了函数 apply
和 Object.values
的工作原理。
let myObj = {
"Hours": 234,
"Minutes": 343,
"Days": 23,
"Months": 4
};
let array = [];
let values = Object.values(myObj);
Array.prototype.push.apply(array, values);
console.log(array);
更简单,如果属性this.state.tableData2
可以被覆盖,只需分配Object.values
的结果。
this.state.tableData2 = Object.values(response.data);
在 react-native 中,我试图将值从下面的代码推送到一个没有键的数组,因为我正在使用的组件 (react-native-table-component) 只接受一个字符串或数字数组,而不是具有键值对的对象。我快要弄清楚了,但我被卡住了!
response.data
的结构response.data = {
"Hours": 234,
"Minutes": 343,
"Days": 23,
"Months": 4
}
接收response.data并推送到数组的代码
toScreenTwo = async () => {
const { isLoggedIn, user} = this.state;
try {
if (!isLoggedIn) {
const response = await http.post('/v1/signup/user', {
user,
})
for (var value in response.data) {
this.state.tableData2.push(value);
}
console.log('response', this.state.tableData2);
}
await this.setState({
modalVisible: false,
friendsModalVisible: false
});
} catch(err) {
console.log("error ", err);
}
}
当前代码结果
上面的代码目前仅将键推送到数组 tableData2 而我只想将值推送到数组 tableData2
react-native-table-组件接受的数组格式
tableData: [
['1', '2', '3'],
['a', 'b', 'c'],
['1', '2', '3'],
['a', 'b', 'c']
]
react-native-table-component 似乎需要传递一个至少嵌套一个数组的数组
错误
如果有人有什么建议那就太好了!
假设这个 response.data
是一个包含如下数据的对象:
{
key: 1,
key2, "Ele", and so on.
}
您可以使用函数 Objec.values
获取值数组 [1, "Ele"]
并使用函数 apply
将这些值作为参数传递给函数 push
。
let values = Object.values(response.data);
Array.prototype.push.apply(this.state.tableData2, values);
此代码片段稍微解释了函数 apply
和 Object.values
的工作原理。
let myObj = {
"Hours": 234,
"Minutes": 343,
"Days": 23,
"Months": 4
};
let array = [];
let values = Object.values(myObj);
Array.prototype.push.apply(array, values);
console.log(array);
更简单,如果属性this.state.tableData2
可以被覆盖,只需分配Object.values
的结果。
this.state.tableData2 = Object.values(response.data);