学习JavaScript,介绍些教材.顺带聊聊职业方向及待遇

需要看书+说明书。
电子书:《JavaScript终极指南》(第四版).pdf、javascript.chm.dhtml.chmJavascript是从事网页工作的软件开发人员需要了解的内容目前,jquery插件运行良好,请仔细阅读。
还实现了Ajax。
很简单。
薪水应该与你的工作能力相关。
你需要学习一门语言,比如Java,jsspasp.netphpc#

JavaScript红宝书第四版精简解析系列--DocumentFragment

WebComponent和微前端架构的兴起,让前端领域对DOM操作和组件管理有了新的认识。
其中ShadowDOM和DocumentFragment是解决DOM隔离和性能优化的主要概念。
今天,我们将重点关注HTML模板(templates)和DocumentFragments,了解它们在实际开发中的应用和价值。
HTML模板作为Vue等框架中的常用组件,本质上是一个子节点容器,用于构建可复用的组件结构。
有趣的是,原生JavaScript也提供了类似的``标签。
虽然默认情况下不显示,但此功能提供了性能优化。
想象一下一个请求,要求向页面添加大量重复元素,例如10,000个``标签。
传统方法会降低页面加载速度和性能。
通过使用``,我们可以预渲染这些DOM结构,将它们存储为DocumentFragments,然后在需要时立即将它们插入到页面中,从而显着提高性能。
此过程避免了每次渲染时创建和销毁DOM节点的开销。
在现实生活中,将内容传递给目标元素后,隐藏的DOM节点会自动显示。
这不仅有助于减少页面加载时间,还可以优化内存使用。
通过document.importNode方法,我们可以将预处理后的DocumentFragment复制到页面中,简化HTML模板创建过程。
然而,定期在HTML中手动创建``标签是无效的。
为了解决这个问题,我们可以通过`DocumentFragment`构造函数直接在JavaScript中创建一个Fragment,并赋予它使用类似于DOM节点的API的权限,例如`appendChild`,这有助于更方便地访问页面。
值得一提的是,通过DocumentFragment我们可以实现脚本的延迟加载。
先将脚本隐藏在``中,然后根据需要将其移动到``或其他指定位置,这样可以有效延迟脚本加载时间,有助于提高页面性能和用户体验。
DocumentFragment更像是一个隔离的DOM环境。
它实际上并不显示在页面上,而是作为独立的DOM树存在。
与ShadowDOM相比,DocumentFragment提供了更灵活的分离DOM的方式,适合在需要动态插入和管理DOM元素的情况下使用。
它与微前端架构中实现的DOM隔离机制(例如乾坤中的解决方案)相呼应,同时也为组件和模块开发提供了强有力的支持。
总体而言,掌握HTML模板和DocumentFragments的使用不仅可以显着提高前端开发的效率和效果,还可以为构建复杂的应用程序提供更加灵活可控的解决方案。
随着技术的不断进步开发中,深入理解这些概念将有助于开发人员构建更高效、响应更快的Web应用程序。

《JavaScript高级程序设计》什么时候出版

《JavaScript高级编程》这本书已经到了第三版,第四版于2006年出版,据说由于ES6的影响,编译时间会更长,没有确切的出版时间。

JavaScript红宝书第四版精简解析系列--弱映射WeakMap

WeakMap是一种映射数据类型,与Map类似,但具有独特的属性。
首先,WeakMap实例原型有一些秘密。
例如,我们可以配置一个以{}为键、以“即将回收的空对象”为值的映射。
由于该映射中的{}与其他变量没有引用关系,因此在变量回收时会直接将其删除。
该函数允许WeakMap映射在下一轮变量重用中被重用,展示了WeakMap的第一个功能。
如果key指针发生变化或者被删除,WeakMap会在下一轮变量回收中回收这个map。
打印WeakMap的私有属性[[Entries]],其中仅包含一个映射,即h.{1:1}是键,“MapValue”是值。
更改映射键指针或使用delete方法也会导致映射关系被重用。
与Map相比,WeakMap的原型缺少Clear、Values和Entries等方法。
原因是WeakMap的映射关系不受引用保护,每当指针改变时就会被重用。
因此无法保证数据的顺序,无法进行迭代,所以不需要使用clear或者其他方法来删除数据。
WeakMap在实际开发中有很多用处。
例如,为对象配置私有属性,通过WeakMap维护每个实例的私有属性,使用不同的实例作为key在WeakMap中打开map,避免实例之间的干扰。
如果实例被销毁或者指针发生变化,WeakMap映射也会被销毁,而不需要手动重用。
此外,WeakMap还可以为DOM元素添加元数据。
使用Wea​​kMap将元数据添加到DOM节点。
当DOM节点被移除时,WeakMap中的映射关系会自动销毁,节省磁盘空间。
这在日常开发中尤其重要,以避免浪费内存。
尽管有些同学质疑内存浪费的程度,但请记住,DOM节点包含大量数据,频繁操作这些数据会消耗大量资源。
虚拟DOM的引入就是为了减少这种操作,避免对包含大量数据的真实DOM进行直接、频繁的操作。
因此,在实际开发中,要合理使用WeakMap。