React Native中如何为JSON数组的每个对象新增带随机值的id键
实现方案
你可以通过数组的map方法遍历原始数组,为每个元素新增id字段即可,具体实现如下:
基础实现代码
// 原始数据 const originalData = [ {"name":"Wooden Furniture"}, {"name":"Office Furniture"}, {"name":"Kitchen Furniture"}, {"name":"Modular Office Furniture"} ]; // 结构转换 const processedData = originalData.map(item => { return { ...item, // 保留原对象所有属性 // 生成8位随机字符串作为id,重复概率极低 id: Math.random().toString(36).substring(2, 10) } })
可选调整方案
如果你需要纯数字格式的随机id,可以把id生成逻辑替换为:
// 生成6位纯数字随机id id: Math.floor(Math.random() * 1000000).toString()
React Native状态更新示例
如果需要把处理后的数据存入组件state,可参考以下写法:
import { useState } from 'react'; const YourComponent = () => { const [furnitureList, setFurnitureList] = useState([]); // 拿到原始数据后调用该方法处理并更新状态 const updateFurnitureList = (rawData) => { const formattedData = rawData.map(item => ({ ...item, id: Math.random().toString(36).slice(2) })) setFurnitureList(formattedData); } // 剩余组件逻辑... }
内容的提问来源于stack exchange,提问作者user14877357
相关产品推荐
相关产品推荐

