前端开发踩过的坑(二)

349 阅读1分钟

刚翻过了几座山,又擒住了几只妖,魑魅魍魉怎么他就那么多?

不定期更新

接上一篇文章

6.fromCharCode()方法和解构:

(这个不是坑)今天在掘金看到一道题

let arr = [{ a: 1, i: { b: 2, c: 3, d: 4 } }];
怎么实现不用i取到abcd的值?

学到两种方法:

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>.

// 解构
      let arr = [{ a: 1, i: { b: 2, c: 3, d: 4 } }];
      let [{ a, i: { b, c, d } }] = arr;
      console.log(a, b, c, d);

本来是发沸点记录的,但是在评论区看到另一种感觉比较有趣的思路

3>.

// 正则
      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。

未完待续...