自互è”网出现以æ¥ï¼ŒWeb å‰ç«¯ä¾¿ä¸æ–地å‘生å˜åŒ–。其间,我们看到了网页端脚本è¯è¨€çš„èŒå‘和进化,JavaScript è¯è¨€æ ‡å‡†çš„åˆ¶å®šï¼Œå„æµè§ˆå™¨åŽ‚å•†ä¹‹é—´çš„ç«žäº‰ï¼Œç‰ç‰ã€‚ éšç€ Web 应用的å‘展,涌现了大é‡ä¼˜ç§€çš„库和框架,例如jQueryã€lodashã€Underscoreã€Backboneã€Angularã€Reactã€Vue ç‰ï¼Œè¿™äº›åº“和框架大幅æå‡äº†Webå¼€å‘与维护效率。 ä½†è¿‘å‡ å¹´ï¼ŒWebå‰ç«¯çš„å‘展已ç»è¶‹ä¹ŽäºŽç—…æ€ï¼Œå„ç§å„æ ·çš„â€œè½®åâ€å±‚出ä¸ç©·ï¼ŒWebå‰ç«¯çš„å‘å±•é€Ÿåº¦å·²ç»æœ‰è¶…过Webå‰ç«¯å¼€å‘人员的å¦ä¹ 速度之势,将开å‘人员远远甩在了åŽé¢ã€‚æ–°çš„æŠ€æœ¯ä¸æ–æ¶ŒçŽ°ï¼Œæœ‰äº›æ–°æŠ€æœ¯æ˜¯æˆ‘ä»¬å·¥ä½œä¸æ— 法回é¿çš„æŠ€æœ¯æ ˆã€‚虽然我们明知é“è¿™äº›æ–°æŠ€æœ¯åœ¨æœªæ¥æ³¨å®šä¼šè¢«æ·˜æ±°ï¼Œä½†è¿«äºŽå·¥ä½œçš„需è¦ä¸å¾—ä¸è¿½èµ¶å®ƒä»¬ã€‚新的“轮åâ€ä¸æ–出现,旧的“轮åâ€è¿˜åœ¨æ›´æ–°ï¼Œè¿™å°±å¯¼è‡´Webå‰ç«¯å¦ä¹ 的疲劳性,而且这ç§ç–²åŠ³æ˜¯å¿ƒç†ä¸Šçš„。 例如,Grunt å¦å®Œï¼Œ Glup æ¥äº†ï¼ŒGlup å¦å®Œï¼Œwebpackåˆæ¥äº†ï¼›åˆå¦‚lessã€sassã€stylus,甚至刚å¦ä¼šä¸€ç§æ–°ä¸œè¥¿ï¼Œè½¬çœ¼é—´å°±å‘现它已ç»è¢«æ·˜æ±°äº†ï¼›å†å¦‚,公å¸å›¢é˜Ÿè¦æ±‚æŽŒæ¡æŸäº›æŠ€æœ¯æ ˆï¼Œä½ 能ä¸å¦å—?显然ä¸èƒ½ï¼ 那么,我们该怎么办呢?“轮åâ€è¢«é€ 出æ¥çš„åˆè¡·å°±æ˜¯ä¸ºäº†æ›´å¥½åœ°è§£å†³ç›¸åº”çš„é—®é¢˜ï¼Œå®ƒåº”è¯¥æ˜¯èƒ½è§£å†³æˆ‘ä»¬çš„é—®é¢˜çš„ï¼Œè€Œä¸æ˜¯è®©æˆ‘们惧怕å¦ä¹ 它。在é¢å¯¹æ–°çš„“轮åâ€æ—¶ï¼Œä¸è¦ç›²ç›®è¿½èµ¶ï¼Œæ— 论这些“轮åâ€å‡ºçŽ°æˆ–æ›´æ–°å¾—æœ‰å¤šå¿«ï¼Œæœ€åŸºç¡€çš„æ ¸å¿ƒçŸ¥è¯†æ˜¯ä¸å˜çš„。我们应该把自己的注æ„åŠ›æ”¾åœ¨é—®é¢˜æœ¬èº«ä¸Šï¼Œè€Œä¸æ˜¯çº 结于“轮åâ€ï¼Œå°†æ›´å¤šçš„精力放在å¦ä¹ 基础知识上。 Web å‰ç«¯çš„ä¸‰å¤§æ ¸å¿ƒçŸ¥è¯†ä¸ºHTMLã€CSSã€JavaScript。在本书ä¸ï¼Œä¸ä¼šè¿‡å¤šæ¶‰åŠ HTMLã€CSS,而是将é‡ç‚¹æ”¾åœ¨JavaScript上。 æœ¬ä¹¦å°†ä»Žæœ€åŸºç¡€çš„çŸ¥è¯†å¼€å§‹ï¼Œå¾ªåºæ¸è¿›åœ°è®²è§£ JavaScript çš„åŸºæœ¬çŸ¥è¯†å’Œé«˜çº§æŠ€å·§ï¼ŒåŠ›æ±‚å†…å®¹ç®€å•æ˜“æ‡‚ã€æ¸…晰明了,通过大é‡å®žä¾‹å¸¦é¢†è¯»è€…å¦ä¼š Web å‰ç«¯å¼€å‘ä¸å¸¸ç”¨çš„ JavaScript 知识åŠå¼€å‘技巧。 主è¦å†…容 å…¨é¢ä»‹ç» JavaScript çš„æ ¸å¿ƒè¯æ³•。 解读å˜é‡ä½œç”¨åŸŸå’Œé—包。 ES6+ 的新特性。 å‰ç«¯æ¨¡å—化。 自动化构建工具。 客户端å˜å‚¨ã€‚ ä½¿ç”¨æ€§èƒ½ä¼˜åŒ–æŠ€æœ¯æ¥æ”¹å–„用户体验。 阅读建议 阅读本书时,如果é‡åˆ°ä¸ç†è§£çš„内容,ä¸è¦åˆ»æ„耗费时间去ç†è§£å’Œé’»ç ”ï¼Œå› ä¸ºæœ‰å¯èƒ½ä½ 耗费的å®è´µæ—¶é—´æ¢æ¥çš„æ˜¯ä¸€ä¸ªé”™è¯¯çš„ç†è§£ç»“果,这是éžå¸¸ä¸å€¼å¾—的,我就åƒè¿‡è¿™æ–¹é¢çš„很多äºã€‚æ‰€ä»¥æˆ‘çš„å»ºè®®æ˜¯ï¼Œåœ¨é˜…è¯»æ—¶è¦æ³¨æ„ä¿æŒä¸æ±‚甚解的æ€åº¦ï¼Œæ¤åˆ»ä¸ç†è§£çš„,å¯èƒ½æ˜¯è‡ªèº«æ°´å¹³æ²¡åˆ°ï¼Œå½“自己的知识到了一定水平,自然就ç†è§£äº†ã€‚å› æ¤ï¼Œè¯»ä¹¦æ—¶ä¸€å®šè¦å¤šè¯»å‡ é,“书读百é,其义自è§â€ï¼Œè¿™æ˜¯è‡ªå¤æµä¼ 下æ¥çš„é“ç†ï¼Œæˆ‘也相信åŒä¸€æœ¬ä¹¦æ¯è¯»ä¸€é都会有ä¸åŒçš„æ”¶èŽ·ã€‚ 䏋颿˜¯å„ç« å†…å®¹çš„ç®€å•介ç»ã€‚ 第 1ã€2 ç« ï¼šä»‹ç» JavaScript çš„è¯žç”Ÿè¿‡ç¨‹ï¼Œä»¥åŠ Chrome å¼€å‘者工具的简å•使用方法。 第 3 ç« ï¼šä¸»è¦ä»‹ç» JavaScript çš„åŸºæœ¬è¯æ³•,为之åŽçš„ JavaScript 编程打下åšå®žçš„基础。 第 4~7 ç« ï¼šè¿›ä¸€æ¥ä»‹ç» JavaScript ä¸çš„å‡ ä¸ªç‰¹æ®Šå¯¹è±¡ï¼ŒåŒ…æ‹¬å‡½æ•°ã€æ•°ç»„ã€å¯¹è±¡ã€ç±»ã€‚利用这些对象,å¯ä»¥æ›´å¥½åœ°ç»„织代ç 。 第 8 ç« ï¼šä»‹ç»ä¸€ç§æ¯”较常è§çš„æ•°æ®äº¤æ¢æ ¼å¼â€”JSON。 第 9~12 ç« ï¼šä¸»è¦ä»‹ç» JavaScript çš„å¦å¤–ä¸¤å¤§æ ¸å¿ƒâ€”BOM å’Œ DOM,并讲解一些常用的 BOM 对象和 DOM 对象的æ“作方法。 第 13 ç« ï¼šä»‹ç» JavaScript ä¸çš„æ¨¡å—。 第 14 ç« ï¼šä»‹ç» cookie 和本地å˜å‚¨ï¼Œä»¥æ¤äº†è§£Webå‰ç«¯ä¸ŽWebåŽç«¯æ˜¯å¦‚何进行用户鉴æƒçš„。 第 15 ç« ï¼šä»‹ç»ä¸€äº›ä¼˜åŒ–Webå‰ç«¯æ€§èƒ½çš„æ–¹æ¡ˆï¼Œä»Žèµ„æºçš„请求ã€åŽ‹ç¼©ã€åŠ è½½ã€ç¼“å˜ç‰æ–¹é¢ç€æ‰‹ï¼Œä¸€æ¥æ¥å®žçްWebå‰ç«¯æ€§èƒ½ä¼˜åŒ–。 第 16 ç« ï¼šä»‹ç»ç›®å‰æµè¡Œçš„一些开æºåº“和框架。 附录 A:以一个文å—å’Œå›¾ç‰‡çš„åˆæˆæ¡ˆä¾‹ï¼Œä»‹ç» Canvas 是如何使用的。 附录 B:介ç»Webå‰ç«¯ä¸çš„ SEO,é¿å…一些误æ“作导致用户体验é™ä½Žã€‚ 附录 C:介ç»ä¸€äº›å¸¸è§çš„ç¼–ç 规范,为代ç 的开å‘与维护建立良好的基础。 代ç 约定 // -> 用于显示表达å¼çš„返回值,例如: 1 + 1; // -> 2 'hello world'; // -> "hello world" // > 用于显示 console.log çš„æ‰§è¡Œç»“æžœåŠæŠ¥é”™ä¿¡æ¯ï¼Œä¾‹å¦‚: console.log(1+1); // > 2 console.log('hello', 'world'); // > hello world 本书读者 本书既适åˆJavaScript è¯è¨€åˆå¦è€…ä½œä¸ºå…¥é—¨çš„æ•™ç¨‹ï¼Œä¹Ÿé€‚åˆ JavaScript è¯è¨€çˆ±å¥½è€…作为进阶的å‚考。如果在阅读本书的过程ä¸ç¢°åˆ°é—®é¢˜ï¼Œè¯·æ‰«æå³ä¾§çš„二维ç ,è”系相关技术人员进行处ç†ã€‚ 作者  2020å¹´