我试图转换一个字符串,我从一个base64解密。比如:“gmail.com“在:[ {user:“123”,age:35,email:“user123@gmail.com”} ]
slsn1g291#
按#拆分,将对减少到Map,转换为对象。
#
Map
const parseHash = (hash, mapper = {}) => Object.fromEntries(hash.split('#').reduce((map, pair) => (([k, v]) => map.set(k, mapper[k] ? mapper[k](v) : v)) (pair.split('@')), new Map)); console.log(parseHash('user@123#age@35#email@user123@gmail.com', { age: Number }));
{ "user": "123", "age": 35, "email": "user123" }
wvmv3b1j2#
我用分裂法解决了。
var decryptedHash = atob(selectedHash.hash).split('#'); let i = 1; var obj = { 'keyname': decryptedHash[0]?.split('@')[i], 'keyname': decryptedHash[1]?.split('@')[i], }
不是一个天才的解决方案,但能完成工作。
2条答案
按热度按时间slsn1g291#
按
#
拆分,将对减少到Map
,转换为对象。输出
wvmv3b1j2#
我用分裂法解决了。
不是一个天才的解决方案,但能完成工作。