-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtools-dev-vscode.html
1771 lines (1769 loc) · 400 KB
/
tools-dev-vscode.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<html lang="zh-CN" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>vscode | 广度和深度</title>
<meta name="description" content="整理和记录代码学习的笔记">
<link rel="preload stylesheet" href="/assets/style.66b7dec6.css" as="style">
<script type="module" src="/assets/app.f6aa04bd.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.2ed14f66.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/framework.027d2da0.js">
<link rel="modulepreload" href="/assets/chunks/theme.98d176af.js">
<link rel="modulepreload" href="/assets/tools-dev-vscode.md.560399f9.lean.js">
<link rel="icon" href="./favicon.ico">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"dark",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-8692e0c2><!--[--><!--]--><!--[--><span tabindex="-1" data-v-7da17955></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-7da17955> Skip to content </a><!--]--><!----><header class="VPNav" data-v-8692e0c2 data-v-bcf310a9><div class="VPNavBar has-sidebar" data-v-bcf310a9 data-v-7192d962><div class="container" data-v-7192d962><div class="title" data-v-7192d962><div class="VPNavBarTitle has-sidebar" data-v-7192d962 data-v-56d4391f><a class="title" href="/" data-v-56d4391f><!--[--><!--]--><!--[--><img class="VPImage logo" src="./logo.jpg" alt data-v-506001e8><!--]--><!--[-->Coder<!--]--><!--[--><!--]--></a></div></div><div class="content" data-v-7192d962><div class="curtain" data-v-7192d962></div><div class="content-body" data-v-7192d962><!--[--><!--]--><div class="VPNavBarSearch search" data-v-7192d962><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg class="DocSearch-Search-Icon" width="20" height="20" viewBox="0 0 20 20" aria-label="search icon"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-7192d962 data-v-359face2><span id="main-nav-aria-label" class="visually-hidden" data-v-359face2>Main Navigation</span><!--[--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>♎语言</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/lang-java.html" data-v-b6a76a69><!--[-->1️⃣ Java<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/lang-python.html" data-v-b6a76a69><!--[-->2️⃣ Python<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/lang-scala.html" data-v-b6a76a69><!--[-->3️⃣ Scala<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/lang-groovy.html" data-v-b6a76a69><!--[-->4️⃣ Groovy<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>☯️算法</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>算法篇</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫代码规范<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫设计模式<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫数据结构<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫源码解读<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>并发篇</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫JVM<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫并发编程<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>设计篇</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫系统设计<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫数仓理论<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>职业篇</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫方向导航<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫职业规划<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫面试准备<!--]--></a></div><!--]--><!--]--></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>♈前端</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫HTML<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫CSS<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫JavaScript<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫JQuery<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫NodeJS<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Vue<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫React<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫小程序<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>🔯微服务</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫RPC<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Spring<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Spring MVC<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Spring Boot<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Spring Cloud<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Spring Cloud Alibaba<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Service Mesh<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>⚧️数据存储</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>SQL数据库</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫MySQL<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Oracle<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>NoSQL数据库</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Redis<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫MongoDB<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>NewSQL数据库</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫TiDB<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>ORM框架</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Mybatis<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Mybatis Plus<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Spring Data JPA<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>消息中间件</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Active MQ<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫RabbitMQ<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫RocketMQ<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Kafka<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>文件存储</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫FastDFS<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Ceph<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫HDFS<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>搜索引擎</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Lucene<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Solr<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫ElasticSearch<!--]--></a></div><!--]--><!--]--></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>☸️DevOps</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>部署</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-tomcat.html" data-v-b6a76a69><!--[-->Tomcat<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-tomcat.html" data-v-b6a76a69><!--[-->🚫Linux<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-shell.html" data-v-b6a76a69><!--[-->Shell<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-tomcat.html" data-v-b6a76a69><!--[-->🚫Nginx<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-tomcat.html" data-v-b6a76a69><!--[-->🚫Linux<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-tomcat.html" data-v-b6a76a69><!--[-->🚫LVS+Keepalived<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/devops-deploy-tomcat.html" data-v-b6a76a69><!--[-->🚫OpenResty+Kong<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>容器</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Docker<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Kubernates<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>云服务器</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫IaaS<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫UCloud<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>持续集成</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Jenkins<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>监控工具</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Arthas<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Zabbix<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>链路追踪</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Sleuth+Zipkin<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫Skywalking<!--]--></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-5d7a6046 data-v-2d40012a><p class="title" data-v-2d40012a>性能压测</p><!--[--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫JMeter<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2d40012a data-v-b6a76a69><a class="VPLink link" href="/#" data-v-b6a76a69><!--[-->🚫全链路压测<!--]--></a></div><!--]--><!--]--></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-359face2 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-bb4a2dc7><span class="text" data-v-bb4a2dc7><!----><span data-v-bb4a2dc7>✝️工具</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-bb4a2dc7><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><div class="items" data-v-5d7a6046><!--[--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-soft.html" data-v-b6a76a69><!--[-->软性办公工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-vcs.html" data-v-b6a76a69><!--[-->版本控制工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->包管理工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->项目构建工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->编程工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->数据库管理<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->虚拟机工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->SSH工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->调试工具<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-5d7a6046 data-v-b6a76a69><a class="VPLink link" href="/tools-dev.html" data-v-b6a76a69><!--[-->压测工具<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-7192d962 data-v-5c7f08f3><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="toggle dark mode" aria-checked="false" data-v-5c7f08f3 data-v-f44e5024 data-v-23c4cb6c><span class="check" data-v-23c4cb6c><span class="icon" data-v-23c4cb6c><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-f44e5024><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-f44e5024><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div><!----><div class="VPFlyout VPNavBarExtra extra" data-v-7192d962 data-v-4a4a2081 data-v-bb4a2dc7><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-bb4a2dc7><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="icon" data-v-bb4a2dc7><circle cx="12" cy="12" r="2"></circle><circle cx="19" cy="12" r="2"></circle><circle cx="5" cy="12" r="2"></circle></svg></button><div class="menu" data-v-bb4a2dc7><div class="VPMenu" data-v-bb4a2dc7 data-v-5d7a6046><!----><!--[--><!--[--><!----><div class="group" data-v-4a4a2081><div class="item appearance" data-v-4a4a2081><p class="label" data-v-4a4a2081>深浅模式</p><div class="appearance-action" data-v-4a4a2081><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="toggle dark mode" aria-checked="false" data-v-4a4a2081 data-v-f44e5024 data-v-23c4cb6c><span class="check" data-v-23c4cb6c><span class="icon" data-v-23c4cb6c><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-f44e5024><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-f44e5024><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div></div></div><!----><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-7192d962 data-v-9cc97dbb><span class="container" data-v-9cc97dbb><span class="top" data-v-9cc97dbb></span><span class="middle" data-v-9cc97dbb></span><span class="bottom" data-v-9cc97dbb></span></span></button></div></div></div></div><!----></header><div class="VPLocalNav reached-top" data-v-8692e0c2 data-v-a8f7ff89><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-a8f7ff89><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="menu-icon" data-v-a8f7ff89><path d="M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"></path><path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"></path><path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"></path><path d="M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"></path></svg><span class="menu-text" data-v-a8f7ff89>菜单</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-a8f7ff89 data-v-a050d324><button data-v-a050d324>返回顶部</button><!----></div></div><aside class="VPSidebar" data-v-8692e0c2 data-v-cde32d1c><div class="curtain" data-v-cde32d1c></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-cde32d1c><span class="visually-hidden" id="sidebar-aria-label" data-v-cde32d1c> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>软性办公</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-baidupan.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>百度网盘</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-foxit.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>福昕阅读器</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-calibre.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Calibre</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-chrome.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Chrome</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-cmder.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Cmder</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-evernote.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Evernote</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-nodepad.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Nodepad</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-office.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Office</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-potplayer.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>PotPlayer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-snipaste.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Snipaste</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-sublimetext.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>SublimeText</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-typora.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Typora</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-tizi.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>科学上网</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-xmind.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Xmind</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-7zip.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>7zip</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-windows.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Windows</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-soft-markdown.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Markdown</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>版本管理</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><section class="VPSidebarItem level-1 collapsible collapsed" data-v-1f85ec84 data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h3 class="text" data-v-1f85ec84>Git</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-2 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-git.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Git</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-gogs.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Gogs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-gitee.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Gitee</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-github.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Github</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-gitlib.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>GitLib</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-gitflow.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>GitFlow</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-vcs-svn.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Svn</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>包管理工具</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-nvm.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>NVM</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>项目构建</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-maven.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Maven</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-gradle.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Gradle</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>编程工具</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-idea.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>IDEA</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-vscode.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>VsCode</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-pycharm.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>PyCharm</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>数据库管理</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-navicat.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Navicat</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>虚拟机工具</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-vmware.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>VMware</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>SSH工具</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-ssh.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>SSH工具</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>调试工具</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-postman.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>Postman</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-cde32d1c><section class="VPSidebarItem level-0 collapsible collapsed" data-v-cde32d1c data-v-1f85ec84><div class="item" role="button" tabindex="0" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><h2 class="text" data-v-1f85ec84>压测工具</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-1f85ec84><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-1f85ec84><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-1f85ec84><!--[--><div class="VPSidebarItem level-1 is-link" data-v-1f85ec84 data-v-1f85ec84><div class="item" data-v-1f85ec84><div class="indicator" data-v-1f85ec84></div><a class="VPLink link link" href="/tools-dev-jmeter.html" data-v-1f85ec84><!--[--><p class="text" data-v-1f85ec84>JMeter</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-8692e0c2 data-v-87044f80><div class="VPDoc has-sidebar has-aside" data-v-87044f80 data-v-e970bbc0><!--[--><!--]--><div class="container" data-v-e970bbc0><div class="aside" data-v-e970bbc0><div class="aside-curtain" data-v-e970bbc0></div><div class="aside-container" data-v-e970bbc0><div class="aside-content" data-v-e970bbc0><div class="VPDocAside" data-v-e970bbc0 data-v-0473afe5><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" role="navigation" data-v-0473afe5 data-v-b2f90363><div class="content" data-v-b2f90363><div class="outline-marker" data-v-b2f90363></div><div class="outline-title" role="heading" aria-level="2" data-v-b2f90363>目录</div><nav aria-labelledby="doc-outline-aria-label" data-v-b2f90363><span class="visually-hidden" id="doc-outline-aria-label" data-v-b2f90363> Table of Contents for current page </span><ul class="root" data-v-b2f90363 data-v-3d0f3048><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-0473afe5></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-e970bbc0><div class="content-container" data-v-e970bbc0><!--[--><!--]--><!----><main class="main" data-v-e970bbc0><div style="position:relative;" class="vp-doc _tools-dev-vscode" data-v-e970bbc0><div><h1 id="vscode" tabindex="-1">vscode <a class="header-anchor" href="#vscode" aria-label="Permalink to "vscode""></a></h1><h2 id="下载" tabindex="-1">下载 <a class="header-anchor" href="#下载" aria-label="Permalink to "下载""></a></h2><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">https://code.visualstudio.com/Download</span></span>
<span class="line"><span style="color:#e1e4e8;">ps:官网有很多文档,插件,以及使用技巧,可以看到 !!!!</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">https://code.visualstudio.com/Download</span></span>
<span class="line"><span style="color:#24292e;">ps:官网有很多文档,插件,以及使用技巧,可以看到 !!!!</span></span></code></pre></div><p><img src="/images/image-20230917150326077.png" alt="image-20230917150326077"></p><h2 id="插件" tabindex="-1">插件 <a class="header-anchor" href="#插件" aria-label="Permalink to "插件""></a></h2><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">中文(简体)汉化包:Chinese (Simplified) Language Pack for VS Code</span></span>
<span class="line"><span style="color:#e1e4e8;">右击在浏览器打开html:open in browser</span></span>
<span class="line"><span style="color:#e1e4e8;">图标主题,支持更换不同色系的图标:Material Icon Theme</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">中文(简体)汉化包:Chinese (Simplified) Language Pack for VS Code</span></span>
<span class="line"><span style="color:#24292e;">右击在浏览器打开html:open in browser</span></span>
<span class="line"><span style="color:#24292e;">图标主题,支持更换不同色系的图标:Material Icon Theme</span></span></code></pre></div><p>提高开发效率及代码格式化</p><ul><li><a href="https://marketplace.visualstudio.com/items?itemName=antfu.iconify" target="_blank" rel="noreferrer">Iconify IntelliSense</a> - Iconify 图标插件</li><li><a href="https://marketplace.visualstudio.com/items?itemName=voorjaar.windicss-intellisense" target="_blank" rel="noreferrer">windicss IntelliSense</a> - windicss 提示插件</li><li><a href="https://marketplace.visualstudio.com/items?itemName=Lokalise.i18n-ally" target="_blank" rel="noreferrer">I18n-ally</a> - i18n 插件</li><li><a href="https://marketplace.visualstudio.com/items?itemName=octref.vetur" target="_blank" rel="noreferrer">Vetur</a> - vue 开发必备 (也可以选择 Volar)</li><li><a href="https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint" target="_blank" rel="noreferrer">ESLint</a> - 脚本代码检查</li><li><a href="https://marketplace.visualstudio.com/items?itemName=stylelint.vscode-stylelint" target="_blank" rel="noreferrer">Stylelint</a> - css 格式化</li><li><a href="https://marketplace.visualstudio.com/items?itemName=mikestead.dotenv" target="_blank" rel="noreferrer">DotENV</a> - .env 文件 高亮</li></ul><h3 id="prettier-代码格式化" tabindex="-1"><a href="https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode" target="_blank" rel="noreferrer">Prettier</a> - 代码格式化 <a class="header-anchor" href="#prettier-代码格式化" aria-label="Permalink to "[Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) - 代码格式化""></a></h3><ul><li>参考:<a href="https://zhuanlan.zhihu.com/p/125773296" target="_blank" rel="noreferrer">https://zhuanlan.zhihu.com/p/125773296</a></li></ul><p>用户setting.json</p><div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#6A737D;">// settings.json</span></span>
<span class="line"><span style="color:#9ECBFF;">"[javascript]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[javascriptreact]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[typescript]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[typescriptreact]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[json]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[vue]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[html]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[css]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[less]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[scss]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[markdown]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">},</span></span>
<span class="line"><span style="color:#9ECBFF;">"[yaml]"</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"editor.defaultFormatter"</span><span style="color:#E1E4E8;">: </span><span style="color:#9ECBFF;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#E1E4E8;">}</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#6A737D;">// settings.json</span></span>
<span class="line"><span style="color:#032F62;">"[javascript]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[javascriptreact]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[typescript]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[typescriptreact]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[json]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[vue]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[html]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[css]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[less]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[scss]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[markdown]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">},</span></span>
<span class="line"><span style="color:#032F62;">"[yaml]"</span><span style="color:#24292E;">: {</span></span>
<span class="line"><span style="color:#24292E;"> </span><span style="color:#005CC5;">"editor.defaultFormatter"</span><span style="color:#24292E;">: </span><span style="color:#032F62;">"esbenp.prettier-vscode"</span></span>
<span class="line"><span style="color:#24292E;">}</span></span></code></pre></div><p>设置下面,开启保存自动格式化</p><p><img src="/images/image-20230917150337837.png" alt="image-20230917150337837"></p><h3 id="设置默认浏览器" tabindex="-1">设置默认浏览器 <a class="header-anchor" href="#设置默认浏览器" aria-label="Permalink to "设置默认浏览器""></a></h3><p><img src="/images/image-20230917150351887.png" alt="image-20230917150351887"></p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">php:</span></span>
<span class="line"><span style="color:#e1e4e8;">- PHP Intelephense</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">php:</span></span>
<span class="line"><span style="color:#24292e;">- PHP Intelephense</span></span></code></pre></div><h2 id="问题" tabindex="-1">问题 <a class="header-anchor" href="#问题" aria-label="Permalink to "问题""></a></h2><h3 id="vscode-终端-禁止运行脚本" tabindex="-1">vscode 终端 禁止运行脚本 <a class="header-anchor" href="#vscode-终端-禁止运行脚本" aria-label="Permalink to "vscode 终端 禁止运行脚本""></a></h3><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">babel : 无法加载文件 D:\\develop\\nodejs\\babel.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/[go.microsoft.com/fwlink/?LinkID=135170](http://go.microsoft.com/fwlink/?LinkID=135170) 中的about\_Execution\_Policies。所在位置 行:1 字符: 1</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">babel : 无法加载文件 D:\\develop\\nodejs\\babel.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/[go.microsoft.com/fwlink/?LinkID=135170](http://go.microsoft.com/fwlink/?LinkID=135170) 中的about\_Execution\_Policies。所在位置 行:1 字符: 1</span></span></code></pre></div><p><img src="/images/image-20230917150418841.png" alt="image-20230917150418841"></p><p>我在cmd是可以查看的</p><p><img src="/images/image-20230917150427011.png" alt="image-20230917150427011"></p><p>所以有2种解决办法</p><ul><li>1.vscode终端选择cmd</li></ul><p><img src="/images/image-20230917150437371.png" alt="image-20230917150437371"></p><p><img src="/images/image-20230917150441621.png" alt="image-20230917150441621"></p><ul><li>2.更改powershell的权限</li></ul><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">set-ExecutionPolicy RemoteSigned</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">set-ExecutionPolicy RemoteSigned</span></span></code></pre></div><pre><code>* 如果该步骤又报需要管理员运行,则右键属性,以管理员身份运行,然后再操作
</code></pre><p><img src="/images/image-20230917150451715.png" alt="image-20230917150451715"></p><h2 id="vscode中使用emmet语法" tabindex="-1">Vscode中使用emmet语法 <a class="header-anchor" href="#vscode中使用emmet语法" aria-label="Permalink to "Vscode中使用emmet语法""></a></h2><blockquote><p>Emmet是一种介于标记性语言(如HTML、XML)和规范之外的逻辑输入方法,是一种能大幅提高前端开发效率的工具。</p></blockquote><h3 id="html-文档类型和结构初始化" tabindex="-1">HTML 文档类型和结构初始化 <a class="header-anchor" href="#html-文档类型和结构初始化" aria-label="Permalink to "HTML 文档类型和结构初始化""></a></h3><ul><li><code>html:5</code> 或<code>!</code>:用于 HTML5文档类型</li><li><code>html:xt</code>:用于 XHTML 过渡文档类型</li><li><code>html:4s</code>:用于 HTML4 严格文档类型</li></ul><div class="language-html vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">html</span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#E1E4E8;">html:5</span></span>
<span class="line"><span style="color:#E1E4E8;">!</span></span>
<span class="line"><span style="color:#E1E4E8;"><!</span><span style="color:#85E89D;">DOCTYPE</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">html</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"><</span><span style="color:#85E89D;">html</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">lang</span><span style="color:#E1E4E8;">=</span><span style="color:#9ECBFF;">"en"</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"><</span><span style="color:#85E89D;">head</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"> <</span><span style="color:#85E89D;">meta</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">charset</span><span style="color:#E1E4E8;">=</span><span style="color:#9ECBFF;">"UTF-8"</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"> <</span><span style="color:#85E89D;">meta</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">name</span><span style="color:#E1E4E8;">=</span><span style="color:#9ECBFF;">"viewport"</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">content</span><span style="color:#E1E4E8;">=</span><span style="color:#9ECBFF;">"width=device-width, initial-scale=1.0"</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"> <</span><span style="color:#85E89D;">meta</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">http-equiv</span><span style="color:#E1E4E8;">=</span><span style="color:#9ECBFF;">"X-UA-Compatible"</span><span style="color:#E1E4E8;"> </span><span style="color:#B392F0;">content</span><span style="color:#E1E4E8;">=</span><span style="color:#9ECBFF;">"ie=edge"</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"> <</span><span style="color:#85E89D;">title</span><span style="color:#E1E4E8;">>Document</</span><span style="color:#85E89D;">title</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"></</span><span style="color:#85E89D;">head</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"><</span><span style="color:#85E89D;">body</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"></</span><span style="color:#85E89D;">body</span><span style="color:#E1E4E8;">></span></span>
<span class="line"><span style="color:#E1E4E8;"></</span><span style="color:#85E89D;">html</span><span style="color:#E1E4E8;">></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292E;">html:5</span></span>
<span class="line"><span style="color:#24292E;">!</span></span>
<span class="line"><span style="color:#24292E;"><!</span><span style="color:#22863A;">DOCTYPE</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">html</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"><</span><span style="color:#22863A;">html</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">lang</span><span style="color:#24292E;">=</span><span style="color:#032F62;">"en"</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"><</span><span style="color:#22863A;">head</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"> <</span><span style="color:#22863A;">meta</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">charset</span><span style="color:#24292E;">=</span><span style="color:#032F62;">"UTF-8"</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"> <</span><span style="color:#22863A;">meta</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">name</span><span style="color:#24292E;">=</span><span style="color:#032F62;">"viewport"</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">content</span><span style="color:#24292E;">=</span><span style="color:#032F62;">"width=device-width, initial-scale=1.0"</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"> <</span><span style="color:#22863A;">meta</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">http-equiv</span><span style="color:#24292E;">=</span><span style="color:#032F62;">"X-UA-Compatible"</span><span style="color:#24292E;"> </span><span style="color:#6F42C1;">content</span><span style="color:#24292E;">=</span><span style="color:#032F62;">"ie=edge"</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"> <</span><span style="color:#22863A;">title</span><span style="color:#24292E;">>Document</</span><span style="color:#22863A;">title</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"></</span><span style="color:#22863A;">head</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"><</span><span style="color:#22863A;">body</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"></</span><span style="color:#22863A;">body</span><span style="color:#24292E;">></span></span>
<span class="line"><span style="color:#24292E;"></</span><span style="color:#22863A;">html</span><span style="color:#24292E;">></span></span></code></pre></div><h4 id="点号" tabindex="-1">点号 <a class="header-anchor" href="#点号" aria-label="Permalink to "点号""></a></h4><p>表示class属性。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div.jpf</span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf"></div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div.jpf</span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf"></div></span></span></code></pre></div><h4 id="井号" tabindex="-1">井号 <a class="header-anchor" href="#井号" aria-label="Permalink to "井号""></a></h4><p>表示id属性。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div#jpf</span></span>
<span class="line"><span style="color:#e1e4e8;"><div id="jpf"></div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div#jpf</span></span>
<span class="line"><span style="color:#24292e;"><div id="jpf"></div></span></span></code></pre></div><h4 id="方括号" tabindex="-1">方括号 <a class="header-anchor" href="#方括号" aria-label="Permalink to "方括号""></a></h4><p>表示标签的内部属性。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">a[href="123" class="a"]</span></span>
<span class="line"><span style="color:#e1e4e8;"><a href="123" class="a"></a></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">a[href="123" class="a"]</span></span>
<span class="line"><span style="color:#24292e;"><a href="123" class="a"></a></span></span></code></pre></div><h4 id="花括号" tabindex="-1">花括号 <a class="header-anchor" href="#花括号" aria-label="Permalink to "花括号""></a></h4><p>表示标签的内容。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div{hi}</span></span>
<span class="line"><span style="color:#e1e4e8;"><div>hi</div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div{hi}</span></span>
<span class="line"><span style="color:#24292e;"><div>hi</div></span></span></code></pre></div><h4 id="小括号" tabindex="-1">小括号 <a class="header-anchor" href="#小括号" aria-label="Permalink to "小括号""></a></h4><p>表示分组标签。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">(a>h1)+(b>h2)</span></span>
<span class="line"><span style="color:#e1e4e8;"><a href=""></span></span>
<span class="line"><span style="color:#e1e4e8;"> <h1></h1></span></span>
<span class="line"><span style="color:#e1e4e8;"></a></span></span>
<span class="line"><span style="color:#e1e4e8;"><b></span></span>
<span class="line"><span style="color:#e1e4e8;"> <h2></h2></span></span>
<span class="line"><span style="color:#e1e4e8;"></b></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">(a>h1)+(b>h2)</span></span>
<span class="line"><span style="color:#24292e;"><a href=""></span></span>
<span class="line"><span style="color:#24292e;"> <h1></h1></span></span>
<span class="line"><span style="color:#24292e;"></a></span></span>
<span class="line"><span style="color:#24292e;"><b></span></span>
<span class="line"><span style="color:#24292e;"> <h2></h2></span></span>
<span class="line"><span style="color:#24292e;"></b></span></span></code></pre></div><h4 id="特殊实例" tabindex="-1">特殊实例 <a class="header-anchor" href="#特殊实例" aria-label="Permalink to "特殊实例""></a></h4><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">ul>.jpf</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="jpf"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span>
<span class="line"><span style="color:#e1e4e8;">label[for='content']>#content</span></span>
<span class="line"><span style="color:#e1e4e8;"><label for="content"></span></span>
<span class="line"><span style="color:#e1e4e8;"> <span id="content"></span></span></span>
<span class="line"><span style="color:#e1e4e8;"></label></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">ul>.jpf</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li class="jpf"></li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span>
<span class="line"><span style="color:#24292e;">label[for='content']>#content</span></span>
<span class="line"><span style="color:#24292e;"><label for="content"></span></span>
<span class="line"><span style="color:#24292e;"> <span id="content"></span></span></span>
<span class="line"><span style="color:#24292e;"></label></span></span></code></pre></div><h3 id="关系符号" tabindex="-1">关系符号 <a class="header-anchor" href="#关系符号" aria-label="Permalink to "关系符号""></a></h3><p>关系符号共有五个,分别是大于号、加号、角号、星号和美元符。</p><h4 id="大于号" tabindex="-1">大于号 <a class="header-anchor" href="#大于号" aria-label="Permalink to "大于号""></a></h4><p>表示嵌套元素。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">ul>li</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">ul>li</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span></code></pre></div><h4 id="加号" tabindex="-1">加号 <a class="header-anchor" href="#加号" aria-label="Permalink to "加号""></a></h4><p>表示同级元素。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div+div</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">ul>li+a</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <a href=""></a></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div+div</span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">ul>li+a</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> <a href=""></a></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span></code></pre></div><h4 id="角号" tabindex="-1">角号 <a class="header-anchor" href="#角号" aria-label="Permalink to "角号""></a></h4><p>表示上级元素。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div>ul>li^p</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> </ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <p></p></span></span>
<span class="line"><span style="color:#e1e4e8;"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">div>ul>li^^p</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> </ul></span></span>
<span class="line"><span style="color:#e1e4e8;"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><p></p></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">ul>li^ul>li</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">div>(p>ul>li*2>a)+div>p</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <p></span></span>
<span class="line"><span style="color:#e1e4e8;"> <ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li><a href=""></a></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li><a href=""></a></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> </ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> </p></span></span>
<span class="line"><span style="color:#e1e4e8;"> <div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <p></p></span></span>
<span class="line"><span style="color:#e1e4e8;"> </div></span></span>
<span class="line"><span style="color:#e1e4e8;"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">div>(tr>td*5)*2+div>p</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <tr></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> </tr></span></span>
<span class="line"><span style="color:#e1e4e8;"> <tr></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> <td></td></span></span>
<span class="line"><span style="color:#e1e4e8;"> </tr></span></span>
<span class="line"><span style="color:#e1e4e8;"> <div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <p></p></span></span>
<span class="line"><span style="color:#e1e4e8;"> </div></span></span>
<span class="line"><span style="color:#e1e4e8;"></div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div>ul>li^p</span></span>
<span class="line"><span style="color:#24292e;"><div></span></span>
<span class="line"><span style="color:#24292e;"> <ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> </ul></span></span>
<span class="line"><span style="color:#24292e;"> <p></p></span></span>
<span class="line"><span style="color:#24292e;"></div></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">div>ul>li^^p</span></span>
<span class="line"><span style="color:#24292e;"><div></span></span>
<span class="line"><span style="color:#24292e;"> <ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> </ul></span></span>
<span class="line"><span style="color:#24292e;"></div></span></span>
<span class="line"><span style="color:#24292e;"><p></p></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">ul>li^ul>li</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">div>(p>ul>li*2>a)+div>p</span></span>
<span class="line"><span style="color:#24292e;"><div></span></span>
<span class="line"><span style="color:#24292e;"> <p></span></span>
<span class="line"><span style="color:#24292e;"> <ul></span></span>
<span class="line"><span style="color:#24292e;"> <li><a href=""></a></li></span></span>
<span class="line"><span style="color:#24292e;"> <li><a href=""></a></li></span></span>
<span class="line"><span style="color:#24292e;"> </ul></span></span>
<span class="line"><span style="color:#24292e;"> </p></span></span>
<span class="line"><span style="color:#24292e;"> <div></span></span>
<span class="line"><span style="color:#24292e;"> <p></p></span></span>
<span class="line"><span style="color:#24292e;"> </div></span></span>
<span class="line"><span style="color:#24292e;"></div></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">div>(tr>td*5)*2+div>p</span></span>
<span class="line"><span style="color:#24292e;"><div></span></span>
<span class="line"><span style="color:#24292e;"> <tr></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> </tr></span></span>
<span class="line"><span style="color:#24292e;"> <tr></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> <td></td></span></span>
<span class="line"><span style="color:#24292e;"> </tr></span></span>
<span class="line"><span style="color:#24292e;"> <div></span></span>
<span class="line"><span style="color:#24292e;"> <p></p></span></span>
<span class="line"><span style="color:#24292e;"> </div></span></span>
<span class="line"><span style="color:#24292e;"></div></span></span></code></pre></div><h4 id="星号" tabindex="-1">星号 <a class="header-anchor" href="#星号" aria-label="Permalink to "星号""></a></h4><p>表示批量复制。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">ul>li*5</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li></li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">div*5</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div></div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">ul>li*5</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"> <li></li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">div*5</span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span>
<span class="line"><span style="color:#24292e;"><div></div></span></span></code></pre></div><h4 id="美元符" tabindex="-1">美元符 <a class="header-anchor" href="#美元符" aria-label="Permalink to "美元符""></a></h4><p>表示数字通配符。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div.jpf$*5</span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf1"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf2"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf3"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf4"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf5"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">div.jpf$$$*5</span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf001"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf002"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf003"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf004"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf005"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">div>ul>li.item-$*3</span></span>
<span class="line"><span style="color:#e1e4e8;"><div></span></span>
<span class="line"><span style="color:#e1e4e8;"> <ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="item-1"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="item-2"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="item-3"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> </ul></span></span>
<span class="line"><span style="color:#e1e4e8;"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">ul>li.$*3</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="1"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="2"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li class="3"></li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span>
<span class="line"><span style="color:#e1e4e8;"></span></span>
<span class="line"><span style="color:#e1e4e8;">ul>li[id='item$']{第$$$条数据}*3</span></span>
<span class="line"><span style="color:#e1e4e8;"><ul></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li id="item1">第001条数据</li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li id="item2">第002条数据</li></span></span>
<span class="line"><span style="color:#e1e4e8;"> <li id="item3">第003条数据</li></span></span>
<span class="line"><span style="color:#e1e4e8;"></ul></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div.jpf$*5</span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf1"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf2"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf3"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf4"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf5"></div></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">div.jpf$$$*5</span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf001"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf002"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf003"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf004"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf005"></div></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">div>ul>li.item-$*3</span></span>
<span class="line"><span style="color:#24292e;"><div></span></span>
<span class="line"><span style="color:#24292e;"> <ul></span></span>
<span class="line"><span style="color:#24292e;"> <li class="item-1"></li></span></span>
<span class="line"><span style="color:#24292e;"> <li class="item-2"></li></span></span>
<span class="line"><span style="color:#24292e;"> <li class="item-3"></li></span></span>
<span class="line"><span style="color:#24292e;"> </ul></span></span>
<span class="line"><span style="color:#24292e;"></div></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">ul>li.$*3</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li class="1"></li></span></span>
<span class="line"><span style="color:#24292e;"> <li class="2"></li></span></span>
<span class="line"><span style="color:#24292e;"> <li class="3"></li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span>
<span class="line"><span style="color:#24292e;"></span></span>
<span class="line"><span style="color:#24292e;">ul>li[id='item$']{第$$$条数据}*3</span></span>
<span class="line"><span style="color:#24292e;"><ul></span></span>
<span class="line"><span style="color:#24292e;"> <li id="item1">第001条数据</li></span></span>
<span class="line"><span style="color:#24292e;"> <li id="item2">第002条数据</li></span></span>
<span class="line"><span style="color:#24292e;"> <li id="item3">第003条数据</li></span></span>
<span class="line"><span style="color:#24292e;"></ul></span></span></code></pre></div><p><strong>美元符配合@可以实现从指定数字开始向后数指定位数。</strong></p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">div.jpf$@3*5</span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf3"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf4"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf5"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf6"></div></span></span>
<span class="line"><span style="color:#e1e4e8;"><div class="jpf7"></div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">div.jpf$@3*5</span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf3"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf4"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf5"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf6"></div></span></span>
<span class="line"><span style="color:#24292e;"><div class="jpf7"></div></span></span></code></pre></div><h4 id="占位标记" tabindex="-1">占位标记 <a class="header-anchor" href="#占位标记" aria-label="Permalink to "占位标记""></a></h4><p><code>lorem</code>表示占位标记,作用是随机生成一个文本。lorem1表示生成的文本包含一个单词,lorem2表示生成的文本包含两个单词,以此类推,loremN表示生成的文本包含N个单词。</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">p*4>lorem2</span></span>
<span class="line"><span style="color:#e1e4e8;"><p>Lorem, ipsum.</p></span></span>
<span class="line"><span style="color:#e1e4e8;"><p>Blanditiis, consequatur.</p></span></span>
<span class="line"><span style="color:#e1e4e8;"><p>Ullam, id?</p></span></span>
<span class="line"><span style="color:#e1e4e8;"><p>Corrupti, ratione.</p></span></span>
<span class="line"><span style="color:#e1e4e8;">div>lorem2</span></span>
<span class="line"><span style="color:#e1e4e8;"><div>Lorem, ipsum.</div></span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">p*4>lorem2</span></span>
<span class="line"><span style="color:#24292e;"><p>Lorem, ipsum.</p></span></span>
<span class="line"><span style="color:#24292e;"><p>Blanditiis, consequatur.</p></span></span>
<span class="line"><span style="color:#24292e;"><p>Ullam, id?</p></span></span>
<span class="line"><span style="color:#24292e;"><p>Corrupti, ratione.</p></span></span>
<span class="line"><span style="color:#24292e;">div>lorem2</span></span>
<span class="line"><span style="color:#24292e;"><div>Lorem, ipsum.</div></span></span></code></pre></div><p><a href="https://emmet.io/" target="_blank" rel="noreferrer">官网:open in new window</a><a href="https://emmet.io/" target="_blank" rel="noreferrer">https://emmet.io/open in new window</a></p><h3 id="快速生成css样式" tabindex="-1">快速生成CSS样式 <a class="header-anchor" href="#快速生成css样式" aria-label="Permalink to "快速生成CSS样式""></a></h3><p>CSS 基本采取简写形式</p><p>1.<code>w200</code>生成width: <code>200px;</code></p><p>2.<code>lh26</code>生成<code>line-height: 26px;</code></p><h2 id="vscode中使用eslint" tabindex="-1">vscode中使用eslint <a class="header-anchor" href="#vscode中使用eslint" aria-label="Permalink to "vscode中使用eslint""></a></h2><ul><li>缩进修改</li></ul><p><img src="/images/image-20230917150512586.png" alt="image-20230917150512586"></p><ul><li>文件末尾需要换行符</li></ul><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">Newline required at end of file but not found</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">Newline required at end of file but not found</span></span></code></pre></div><p><img src="/images/image-20230917150524494.png" alt="image-20230917150524494"></p><ul><li>逗号后面要有空格</li></ul><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#e1e4e8;">A space is required after ','</span></span></code></pre><pre class="shiki github-light vp-code-light"><code><span class="line"><span style="color:#24292e;">A space is required after ','</span></span></code></pre></div><p><img src="/images/image-20230917150533186.png" alt="image-20230917150533186"></p><p><img src="/images/image-20230917150536794.png" alt="image-20230917150536794"></p><p>非友情提示**:每个规则对应的0,1,2分别表示off, warning, error三个错误级别</p><ul><li>no-unused-vars</li></ul><p>定义了变量却没有在代码中使用,这是防止产生多余没用的变量</p><ul><li>semi</li></ul><p>缺少分号,行尾必须使用分号,这是为了在压缩代码的时候出现意外情况</p><ul><li>no-console</li></ul><p>禁止使用 console,提醒开发者,上线时要去掉,因为是warning不会导致编译的js出问题</p><ul><li>consistent-this</li></ul><p>this的别名规则,只允许self和that,防止有些人写成_this或者me等等,哈哈</p><ul><li>curly</li></ul><p>if 后必须包含 { ,单行 if 除外,也是为了方便阅读代码</p><ul><li>eqeqeq</li></ul><p>必须使用全等===进行比较,防止隐式转换带来的意外问题</p><ul><li>guard-for-in</li></ul><p>for in时需检测hasOwnProperty,避免遍历到继承来的属性方法</p><ul><li>max-depth</li></ul><p>最大块嵌套不能超过5层</p><ul><li>max-params</li></ul><p>函数的形参不能多于8个,如果形参过多,我们现在可以用扩展运算符...来代替后面多余的形参</p><ul><li>new-cap</li></ul><p>new关键字后类名应首字母大写,区分类和函数</p><ul><li>no-array-constructor</li></ul><p>禁止使用Array构造函数,定义数组直接用最快捷的方式[1, 2, 3]</p><ul><li>no-await-in-loop</li></ul><p>禁止将await写在循环里,循环属于同步操作,不该将await异步操作写在内部</p><ul><li>no-caller</li></ul><p>禁止使用arguments.caller和arguments.callee,ES6中废弃了</p><ul><li>no-const-assign</li></ul><p>禁止对const定义重新赋值</p><ul><li>no-delete-var</li></ul><p>禁止对变量使用delete关键字,delete只适用于对象的属性,提醒使用的范围</p><ul><li>no-dupe-args</li></ul><p>函数参数禁止重名</p><ul><li>no-empty-function</li></ul><p>禁止空的function,保证写的每一个function都有用</p><ul><li>no-eval</li></ul><p>禁止使用eval,eval是“魔鬼”,所以在开发中避免</p><ul><li>no-extra-semi</li></ul><p>禁止额外的分号,有些地方没必要加分号比如if () {};这样就是错误的</p><ul><li>no-global-assign</li></ul><p>禁止对全局变量赋值</p><p>例如一份公司中用到的规则:</p><div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki github-dark vp-code-dark"><code><span class="line"><span style="color:#6A737D;">// .eslintrc.js</span></span>
<span class="line"><span style="color:#E1E4E8;">module.exports = {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 解析ES6</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'parser'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'babel-eslint'</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'parserOptions'</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 启用ES8语法支持</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'ecmaVersion'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2017</span><span style="color:#E1E4E8;">, </span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// module表示ECMAScript模块</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'sourceType'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'module'</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 使用额外的语言特性</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'ecmaFeatures'</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'experimentalObjectRestSpread'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'jsx'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'modules'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> }</span></span>
<span class="line"><span style="color:#E1E4E8;"> },</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 这些环境并不是互斥的,所以你可以同时定义多个</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'env'</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'browser'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'jquery'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'node'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'commonjs'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'es6'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> },</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'root'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 当访问当前源文件内未定义的变量时,no-undef 规则将发出警告</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 所以需要定义这些额外的全局变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'globals'</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'OnlySVG'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'monitor'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'CanvasRender'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'Vue'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'VueRouter'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span></span>
<span class="line"><span style="color:#E1E4E8;"> },</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'rules'</span><span style="color:#E1E4E8;">: {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 设置了 setter ,必须相应设置 getter ,反之不必须</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'accessor-pairs'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 数组方括号前后的换行符使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'array-bracket-newline'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 数组方括号前后的空格使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'array-bracket-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 数组的 map、filter、sort 等方法,回调函数必须有返回值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'array-callback-return'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 每个数组项是否独占一行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'array-element-newline'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 箭头函数的书写规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'arrow-body-style'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 箭头函数的圆括号使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'arrow-parens'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 箭头函数的空格使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'arrow-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 不能在块外使用块作用域内 var 定义的变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'block-scoped-var'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 代码块花括号前后的空格规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'block-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// if else 的花括号换行规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'brace-style'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// callback 之后必须立即 return</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'callback-return'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 变量名必须使用驼峰式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'camelcase'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 注释的首字母应该大写</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'capitalized-comments'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// class 的非静态方法必须包含 this 关键字</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'class-methods-use-this'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 对象的最后一项后面是否写逗号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 此项目不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @fixable 对于 PC 项目考虑兼容性时需要设置</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'comma-dangle'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 逗号前后是否有空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'comma-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 逗号写在行首还是行尾</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'comma-style'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止函数 if ... else if ... else 的复杂度超过 20</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'complexity'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 使用方括号访问对象属性时,方括号前后的空格规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'computed-property-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止函数在不同条件下返回不同类型的值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 有时候会希望通过参数获取不同类型的返回值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'consistent-return'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// this 的别名规则,只允许 self 或 that</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'consistent-this'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'self'</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'that'</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 构造函数中必须调用 super</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'constructor-super'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// if 后必须包含 { ,单行 if 除外</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'curly'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'multi-line'</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'consistent'</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// switch 语句必须包含 default</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'default-case'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 链式操作时,点的位置,是在上一行结尾还是下一行开头</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'dot-location'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 文件最后必须有空行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'eol-last'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用 === 和 !== ,和 null 对比时除外</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'eqeqeq'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'always'</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'null'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'ignore'</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// for 循环不得因方向错误造成死循环</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'for-direction'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 执行函数的圆括号前后的空格规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'func-call-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 把函数赋给变量或对象属性时,函数名和变量名或对象属性名必须一致</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'func-name-matching'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 不允许匿名函数</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'func-names'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须只使用函数申明或只使用函数表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'func-style'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// generator 的 * 前后空格使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'generator-star-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// getter 必须有返回值,允许返回 undefined</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'getter-return'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">allowImplicit</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// require 必须在全局作用域下</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 条件加载很常见</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'global-require'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// for in 时需检测 hasOwnProperty</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'guard-for-in'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// callback 中的 err、error 参数和变量必须被处理</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'handle-callback-err'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// id 黑名单</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂时没有</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'id-blacklist'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 变量名长度限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 长度不是重点,清晰易读才是关键</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'id-length'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 限制变量名必须匹配指定的正则表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要限制变量名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'id-match'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 缩进使用 tab 还是空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'indent'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 变量必须在定义的时候赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 先定义后赋值很常见</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'init-declarations'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// jsx 语法中,属性的值必须使用双引号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'jsx-quotes'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'prefer-double'</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 对象字面量冒号前后的空格使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'key-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 关键字前后必须有空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'keyword-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 换行符使用规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'linebreak-style'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 单行注释必须写在前一行还是行尾</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'line-comment-position'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 注释前后是否要空一行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'lines-around-comment'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 最大块嵌套深度为 5 层</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-depth'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#79B8FF;">5</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 限制单行代码的长度</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-len'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 限制单个文件最大行数</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-lines'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 最大回调深度为 3 层</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-nested-callbacks'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#79B8FF;">3</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 函数的形参不能多于8个</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-params'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#79B8FF;">8</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 限制一行中的语句数量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-statements-per-line'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 限制函数块中的语句数量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'max-statements'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 三元表达式的换行规则</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'multiline-ternary'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// new关键字后类名应首字母大写</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'new-cap'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'capIsNew'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">false</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许大写开头的函数直接执行</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// new 关键字后类应包含圆括号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'new-parens'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 链式调用是否要换行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'newline-per-chained-call'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 alert,提醒开发者,上线时要去掉</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-alert'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">1</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 Array 构造函数,使用 Array(num) 直接创建长度为 num 的数组时可以</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-array-constructor'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止将 await 写在循环里</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-await-in-loop'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止位运算</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-bitwise'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在 Node.js 中直接调用 Buffer 构造函数</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-buffer-constructor'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 arguments.caller 和 arguments.callee</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-caller'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// switch的条件中出现 var、let、const、function、class 等关键字,必须使用花括号把内容括起来</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-case-declarations'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// catch中不得使用已定义的变量名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-catch-shadow'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// class定义的类名不得与其它变量重名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-class-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止与 -0 做比较</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-compare-neg-zero'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在 if、for、while 中出现赋值语句,除非用圆括号括起来</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-cond-assign'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'except-parens'</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现难以理解的箭头函数,除非用圆括号括起来</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-confusing-arrow'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'allowParens'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 console,提醒开发者,上线时要去掉</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-console'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">1</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用常量作为判断条件</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-constant-condition'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'checkLoops'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">false</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止对 const 定义重新赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-const-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 continue</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 很常用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-continue'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止正则表达式中出现 Ctrl 键的 ASCII 表示,即/\x1f/</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-control-regex'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 debugger 语句,提醒开发者,上线时要去掉</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-debugger'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">1</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止对变量使用 delete 关键字,删除对象的属性不受限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-delete-var'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在正则表达式中出现形似除法操作符的开头,如 let a = /=foo/</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 有代码高亮的话,在阅读这种代码时,也完全不会产生歧义或理解上的困难</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-div-regex'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 函数参数禁止重名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-dupe-args'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止对象出现重名键值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-dupe-keys'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 类方法禁止重名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-dupe-class-members'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 switch 中出现相同的 case</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-duplicate-case'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止重复 import</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-duplicate-imports'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现 if (cond) { return a } else { return b },应该写为 if (cond) { return a } return b</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 有时前一种写法更清晰易懂</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-else-return'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 正则表达式中禁止出现空的字符集[]</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-empty-character-class'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止空的 function</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 包含注释的情况下允许</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-empty-function'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止解构中出现空 {} 或 []</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-empty-pattern'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现空代码块</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-empty'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'allowEmptyCatch'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 == 和 != 与 null 做比较,必须用 === 或 !==</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 非严格相等可以同时判断 null 和 undefined</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-eq-null'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 eval</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-eval'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// catch 定义的参数禁止赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-ex-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止扩展原生对象</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-extend-native'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'exceptions'</span><span style="color:#E1E4E8;">: [</span><span style="color:#FDAEB7;font-style:italic;">'Array'</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'Object'</span><span style="color:#E1E4E8;">] }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止额外的 bind</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-extra-bind'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止额外的布尔值转换</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-extra-boolean-cast'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止额外的 label</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-extra-label'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止额外的括号,仅针对函数体</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-extra-parens'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'functions'</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止额外的分号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-extra-semi'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 每一个 switch 的 case 都需要有 break, return 或 throw</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 包含注释的情况下允许</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-fallthrough'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'commentPattern'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'.'</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 不允许使用 2. 或 .5 来表示数字,需要用 2、2.0、0.5 的格式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-floating-decimal'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止对函数声明重新赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-func-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止对全局变量赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-global-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用隐式类型转换</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-implicit-coercion'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'allow'</span><span style="color:#E1E4E8;">: [</span><span style="color:#FDAEB7;font-style:italic;">'+'</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'!!'</span><span style="color:#E1E4E8;">] </span><span style="color:#6A737D;">// 允许 + 转数值 '' + 转字符串和 !! 转布尔值</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在 setTimeout 和 setInterval 中传入字符串,因会触发隐式 eval</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-implied-eval'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止隐式定义全局变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-implicit-globals'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止行内注释</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 很常用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-inline-comments'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在块作用域内使用 var 或函数声明</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-inner-declarations'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'both'</span><span style="color:#E1E4E8;">],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用非法的正则表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-invalid-regexp'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在类之外的地方使用 this</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off this 的使用很灵活,事件回调中可以表示当前元素,函数也可以先用 this,等以后被调用的时候再 call</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-invalid-this'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用不规范空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-irregular-whitespace'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'skipStrings'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许在字符串中使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'skipComments'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许在注释中使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'skipRegExps'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许在正则表达式中使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'skipTemplates'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许在模板字符串中使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 __iterator__</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-iterator'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// label 不得与已定义的变量重名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-label-var'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 label</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 禁止了将很难 break 多重循环和多重 switch</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-labels'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用无效的块作用域</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-lone-blocks'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 else 中只有一个单独的 if</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 单独的 if 可以把逻辑表达的更清楚</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-lonely-if'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 for (var i) { function() { use i } },使用 let 则可以</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-loop-func'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止魔法数字</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-magic-numbers'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用混合的逻辑判断,必须把不同的逻辑用圆括号括起来</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-mixed-operators'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"groups"</span><span style="color:#E1E4E8;">: [</span></span>
<span class="line"><span style="color:#E1E4E8;"> [</span><span style="color:#9ECBFF;">"&&"</span><span style="color:#E1E4E8;">, </span><span style="color:#9ECBFF;">"||"</span><span style="color:#E1E4E8;">]</span></span>
<span class="line"><span style="color:#E1E4E8;"> ]</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 相同类型的 require 必须放在一起</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-mixed-requires'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止混用空格和 tab 来做缩进,必须统一</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-mixed-spaces-and-tabs'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止连等赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-multi-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用连续的空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-multi-spaces'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 \ 来定义多行字符串,统一使用模板字符串来做</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-multi-str'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 连续空行的数量限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-multiple-empty-lines'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">max</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">3</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 文件内最多连续 3 个</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">maxEOF</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">1</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 文件末尾最多连续 1 个</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">maxBOF</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">1</span><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 文件头最多连续 1 个</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 if 中出现否定表达式 !==</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 否定的表达式可以把逻辑表达的更清楚</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-negated-condition'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止嵌套的三元表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没有必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-nested-ternary'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 new Function</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 有时会用它来解析非标准格式的 JSON 数据</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-new-func'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 new Object</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-new-object'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 new require</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-new-require'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 new Symbol</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-new-symbol'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 new Boolean、Number 或 String</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-new-wrappers'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 new 一个类而不存储该实例</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-new'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止把原生对象 Math、JSON、Reflect 当函数使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-obj-calls'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用八进制转义符</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-octal-escape'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用0开头的数字表示八进制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-octal'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 __dirname + 'file' 的形式拼接路径,应该使用 path.join 或 path.resolve 来代替</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-path-concat'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止对函数的参数重新赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-param-reassign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 ++ 和 --</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 很常用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-plusplus'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 p<wbr>rocess.env.NODE_ENV</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 使用很常见</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-process-env'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 process.exit(0)</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 使用很常见</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-process-exit'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 hasOwnProperty, isPrototypeOf 或 propertyIsEnumerable</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 与 guard-for-in 规则冲突,且没有必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-prototype-builtins'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 __proto__</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-proto'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止重复声明</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-redeclare'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在正则表达式中出现连续空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-regex-spaces'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止特定的全局变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂时没有</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-restricted-globals'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 import 特定的模块</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂时没有</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-restricted-imports'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用特定的模块</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂时没有</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-restricted-modules'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'off'</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止特定的对象属性</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂时没有</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-restricted-properties'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用特定的语法</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂时没有</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-restricted-syntax'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在return中赋值</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-return-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在 return 中使用 await</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-return-await'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 location.href = 'javascript:void'</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-script-url'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止将自己赋值给自己</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-self-assign'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止自己与自己作比较</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-self-compare'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止逗号操作符</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-sequences'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用保留字作为变量名</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-shadow-restricted-names'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在嵌套作用域中出现重名的定义,如 let a; function b() { let a }</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-shadow'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止数组中出现连续逗号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-sparse-arrays'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 node 中的同步的方法,比如 fs.readFileSync</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 使用很常见</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-sync'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 tabs</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-tabs'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止普通字符串中出现模板字符串语法</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-template-curly-in-string'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止三元表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 很常用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-ternary'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在构造函数的 super 之前使用 this</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-this-before-super'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 throw 字面量,必须 throw 一个 Error 对象</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-throw-literal'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止行尾空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-trailing-spaces'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"skipBlankLines"</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 不检查空行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#79B8FF;">"ignoreComments"</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 不检查注释</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止将 undefined 赋值给变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-undef-init'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止访问未定义的变量或方法</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-undef'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 undefined,如需判断一个变量是否为 undefined,请使用 typeof a === 'undefined'</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-undefined'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止变量名中使用下划线</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 暂不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-underscore-dangle'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现难以理解的多行代码</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unexpected-multiline'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 循环体内必须对循环条件进行修改</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unmodified-loop-condition'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止不必要的三元表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unneeded-ternary'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, { </span><span style="color:#FDAEB7;font-style:italic;">'defaultAssignment'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">false</span><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现不可到达的代码,如在 return、throw 之后的代码</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unreachable'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在finally块中出现 return、throw、break、continue</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unsafe-finally'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现不安全的否定,如 for (!key in obj} {},应该写为 for (!(key in obj)} {}</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unsafe-negation'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止出现无用的表达式</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unused-expressions'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'allowShortCircuit'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许使用 a() || b 或 a && b()</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'allowTernary'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许在表达式中使用三元运算符</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'allowTaggedTemplates'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许标记模板字符串</span></span>
<span class="line"><span style="color:#E1E4E8;"> }</span></span>
<span class="line"><span style="color:#E1E4E8;"> ],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止定义不使用的 label</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unused-labels'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止定义不使用的变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-unused-vars'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'vars'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'all'</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 变量定义必须被使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'args'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'none'</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 对于函数形参不检测</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'ignoreRestSiblings'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 忽略剩余子项 fn(...args),{a, b, ...coords}</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'caughtErrors'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'none'</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 忽略 catch 语句的参数使用</span></span>
<span class="line"><span style="color:#E1E4E8;"> }</span></span>
<span class="line"><span style="color:#E1E4E8;"> ],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止在变量被定义之前使用它</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-use-before-define'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'functions'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">false</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许函数在定义之前被调用</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'classes'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">false</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许类在定义之前被引用</span></span>
<span class="line"><span style="color:#E1E4E8;"> }</span></span>
<span class="line"><span style="color:#E1E4E8;"> ],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止不必要的 call 和 apply</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-call'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用不必要计算的key,如 var a = { ['0']: 0 }</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-computed-key'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止不必要的字符串拼接</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-concat'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止无用的构造函数</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-constructor'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止无用的转义</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-escape'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止无效的重命名,如 import {a as a} from xxx</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-rename'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止没有必要的 return</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没有必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-useless-return'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用 var,必须用 let 或 const</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-var'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止使用void</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-void'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止注释中出现 TODO 或 FIXME,用这个来提醒开发者,写了 TODO 就一定要做完</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-warning-comments'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">1</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止属性前出现空格,如 foo. bar()</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-whitespace-before-property'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 with</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'no-with'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 禁止 if 语句在没有花括号的情况下换行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'nonblock-statement-body-position'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 定义对象的花括号前后是否要加空行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'object-curly-newline'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 定义对象的花括号前后是否要加空格</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'object-curly-spacing'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 对象每个属性必须独占一行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'object-property-newline'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// obj = { a: a } 必须转换成 obj = { a }</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'object-shorthand'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 每个变量声明必须独占一行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 有 one-var 就不需要此规则了</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'one-var-declaration-per-line'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 是否允许使用逗号一次声明多个变量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'one-var'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'const'</span><span style="color:#E1E4E8;">: </span><span style="color:#FDAEB7;font-style:italic;">'never'</span><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 所有 const 声明必须独占一行,不允许用逗号定义多个</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用 x = x + y 而不是 x += y</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'operator-assignment'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 断行时操作符位于行首还是行尾</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不关心</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'operator-linebreak'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 代码块首尾必须要空行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'padded-blocks'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 限制语句之间的空行规则,比如变量定义完之后必须要空行</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'padding-line-between-statements'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用箭头函数作为回调</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-arrow-callback'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 声明后不再修改的变量必须使用 const</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-const'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用解构</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-destructuring'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用 0b11111011 而不是 parseInt('111110111', 2)</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-numeric-literals'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// promise 的 reject 中必须传入 Error 对象,而不允许使用字面量</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-promise-reject-errors'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用解构 ...args 来代替 arguments</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-rest-params'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用 func(...args) 来代替 func.apply(args)</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 没必要</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-spread'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 必须使用模板字符串来代替字符串拼接</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// @off 不限制</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'prefer-template'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">0</span><span style="color:#E1E4E8;">,</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 字符串必须使用单引号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'quotes'</span><span style="color:#E1E4E8;">: [</span><span style="color:#79B8FF;">2</span><span style="color:#E1E4E8;">, </span><span style="color:#FDAEB7;font-style:italic;">'single'</span><span style="color:#E1E4E8;">, {</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'avoidEscape'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许包含单引号的字符串使用双引号</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#FDAEB7;font-style:italic;">'allowTemplateLiterals'</span><span style="color:#E1E4E8;">: </span><span style="color:#79B8FF;">true</span><span style="color:#E1E4E8;">, </span><span style="color:#6A737D;">// 允许使用模板字符串</span></span>
<span class="line"><span style="color:#E1E4E8;"> }],</span></span>
<span class="line"><span style="color:#E1E4E8;"> </span><span style="color:#6A737D;">// 对象字面量的键名禁止用引号括起来</span></span>