|
@@ -0,0 +1,86 @@
|
|
|
+<!DOCTYPE html>
|
|
|
+<html lang="en">
|
|
|
+<head>
|
|
|
+ <meta charset="UTF-8">
|
|
|
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
+ <title>Document</title>
|
|
|
+</head>
|
|
|
+<body>
|
|
|
+ <script>
|
|
|
+ //1 扩展运算符
|
|
|
+ //rest参数对对象的支持
|
|
|
+ function connect({host,port,name,password,...etc}){
|
|
|
+ console.log(host)
|
|
|
+ }
|
|
|
+ connect({
|
|
|
+ host:'hi',
|
|
|
+ port:23,
|
|
|
+ name:'3',
|
|
|
+ password:'',
|
|
|
+ bbb:'',
|
|
|
+ ccc:'d'
|
|
|
+ })
|
|
|
+ //将对象展开
|
|
|
+ const skillOne = {
|
|
|
+ a:'222',
|
|
|
+ b:'ccc'
|
|
|
+ }
|
|
|
+ //...skillOne => a:'222',b:'ccc'
|
|
|
+ const skillTwo = {
|
|
|
+ d:'ccc'
|
|
|
+ }
|
|
|
+ const m = {...skillOne,...skillTwo}
|
|
|
+ console.log(m)
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 2 正则扩展 -- 命名捕获分组
|
|
|
+ */
|
|
|
+ let str = '<a href="http://www.baidu.com">ggg</a>'
|
|
|
+ //提取url和标签文本
|
|
|
+ //未命名
|
|
|
+ const reg = /<a href="(.*)">(.*)<\/a>/
|
|
|
+ const result = reg.exec(str)
|
|
|
+ console.log(result)
|
|
|
+ //已命名
|
|
|
+ const reg1 = /<a href="(?<url>.*)">(?<text>.*)<\/a>/
|
|
|
+ const result1 = reg1.exec(str)
|
|
|
+ console.log(result1)
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 3 正则扩展 -- 反向断言
|
|
|
+ */
|
|
|
+ //正向断言
|
|
|
+ let s1 = 'fksfjsk888fjdskfjslfjiwruo234uuu'
|
|
|
+ //提取数字 -- 后面234
|
|
|
+ const reg2 = /\d+(?=u)/
|
|
|
+ const r1 = reg2.exec(s1)
|
|
|
+ console.log(r1)
|
|
|
+ //反向断言 --- 根据前面内容判断
|
|
|
+ const reg3 = /(?<=o)\d+/
|
|
|
+ const r2 = reg3.exec(s1)
|
|
|
+ console.log(r2)
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 4 正则扩展 -- dotAll
|
|
|
+ * dot . 元字符 除换行符以外的任意单个字符
|
|
|
+ */
|
|
|
+ let str3 = `
|
|
|
+ <ul>
|
|
|
+ <li>
|
|
|
+ <a>123</a>
|
|
|
+ <p>1</p>
|
|
|
+ </li>
|
|
|
+ <li>
|
|
|
+ <a>5345</a>
|
|
|
+ <p>2</p>
|
|
|
+ </li>
|
|
|
+ </ul>`
|
|
|
+ //const reg4 = /<li>\s+<a>(.*?)<\/a>\s+<p>(.*?)<\/p>/
|
|
|
+ const reg4 = /<li>.*?<a>(.*?)<\/a>.*?<p>(.*?)<\/p>/s
|
|
|
+ const result3 = reg4.exec(str3)
|
|
|
+ console.log(result3)
|
|
|
+
|
|
|
+ </script>
|
|
|
+</body>
|
|
|
+</html>
|