我想把number
转换成string
,但我在JavaScript将带前导零的数字转换为八进制数时遇到了问题。
我有一个像这样的对象列表:
const ids = [
{ _id : 1236 },
{ _id : "abc123" },
{ _id : 012019 },
{ _id : 000010 },
{ _id : 001230 }
{ _id : 00000000000000 }
]
我想要将对象中的所有id都转换成 字符串
,就像这样
[
{ _id : "1236" },
{ _id : "abc123" },
{ _id : "012345" },
{ _id : "000010 },
{ _id : "001230" },
{ _id : "00000000000000" }
]
因此,我编写了以下这个函数:
updateIds = () => ids.map(i => {
i._id = i._id.toString()
return i
})
updateIds()
但是这个函数的结果是...
[
{ _id: '1236' },
{ _id: 'abc123' },
{ _id: '012019' },
{ _id: '8' },
{ _id: '664' },
{ _id: '0' }
]
我该如何忽略javascript将000010
和001230
转换为八进制?
附:我认为无法使用pad
函数编写前导零,因为_id
的值是动态的。我不知道它的长度。
000010
已经变成了8
。你需要将其作为文本处理,并编写自己的解析器来处理它... - 04FScsv
文件中的值。 - Earn Asdsa