接上一篇文章正则表达式
(这个不是坑)今天在掘金看到一道题函数
let arr = [{ a: 1, i: { b: 2, c: 3, d: 4 } }];
怎么实现不用i取到abcd的值?
复制代码
学到两种方法:ui
1>.编码
// 将 Unicode 编码转为一个字符(105为i)
const arr = [{ a: 1, i: { b: 2, c: 3, d: 4 } }];
const {b,c,d} = arr[0][String.fromCharCode(105)];
console.log(b,c,d);
复制代码
2>.spa
// 解构
let arr = [{ a: 1, i: { b: 2, c: 3, d: 4 } }];
let [{ a, i: { b, c, d } }] = arr;
console.log(a, b, c, d);
复制代码
原本是发沸点记录的,可是在评论区看到另外一种感受比较有趣的思路code
3>.regexp
// 正则
let arr = [{ a: 1, i: { b: 2, c: 3, d: 4 } }];
console.log(/"a":(.)/.exec( JSON.stringify(arr))[1]);
复制代码
都是高手:)字符串
上面exec()这个函数平时几乎没见过,因此写出来
语法:
RegExpObject.exec(string)
exec() 方法用于检索字符串中的正则表达式的匹配。
若是字符串中有匹配的值返回该匹配值,不然返回 null。
复制代码
未完待续...string