<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chtazycdf的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chtazycdf</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chtazycdf]]></copyright><item><title><![CDATA[【css】层叠上下文]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/139444556</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/139444556</guid><author>chtazycdf</author><pubDate>Tue, 04 Jun 2024 15:42:01 +0800</pubDate><description><![CDATA[我们假定用户正面向（浏览器）视窗或网页，而 HTML 元素沿着其相对于用户的一条虚构的 z 轴排开，就是对这些 HTML 元素的一个三维构想。众 HTML 元素基于其元素属性按照优先级顺序占据这个空间。]]></description><category></category></item><item><title><![CDATA[【vue】通过js加载vue组件]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/138620281</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/138620281</guid><author>chtazycdf</author><pubDate>Thu, 09 May 2024 16:40:38 +0800</pubDate><description><![CDATA[【代码】【vue】通过js加载vue组件。]]></description><category></category></item><item><title><![CDATA[vue history模式下$router.push为什么不会刷新页面]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137966273</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137966273</guid><author>chtazycdf</author><pubDate>Fri, 19 Apr 2024 16:15:05 +0800</pubDate><description><![CDATA[该方法不会刷新页面，会向浏览器的会话历史栈增加一个条目。]]></description><category></category></item><item><title><![CDATA[语义化版本 2.0.0]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137510013</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137510013</guid><author>chtazycdf</author><pubDate>Mon, 08 Apr 2024 15:07:45 +0800</pubDate><description><![CDATA[主版本号：当你做了不兼容的 API 修改，次版本号：当你做了向下兼容的功能性新增，修订号：当你做了向下兼容的问题修正。先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面，作为延伸。在软件管理的领域里存在着被称作“依赖地狱”的死亡之谷，系统规模越大，加入的包越多，你就越有可能在未来的某一天发现自己已深陷绝望之中。在依赖高的系统中发布新版本包可能很快会成为噩梦。如果依赖关系过高，可能面临版本控制被锁死的风险（必须对每一个依赖包改版才能完成某次升级）。]]></description><category></category></item><item><title><![CDATA[flex布局——align-content]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137508492</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137508492</guid><author>chtazycdf</author><pubDate>Mon, 08 Apr 2024 14:40:22 +0800</pubDate><description><![CDATA[如果项目只有一根轴线，该属性不起作用。align-content属性定义了。]]></description><category></category></item><item><title><![CDATA[ES6——26、编程风格]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137450077</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137450077</guid><author>chtazycdf</author><pubDate>Sun, 07 Apr 2024 09:31:11 +0800</pubDate><description><![CDATA[本章探讨如何将 ES6 的新语法，运用到编码实践之中，与传统的 JavaScript 语法结合在一起，写出合理的、易于阅读和维护的代码。多家公司和组织已经公开了它们的风格规范，下面的内容主要参考了公司的 JavaScript 风格规范。]]></description><category></category></item><item><title><![CDATA[ES6——25、Module 的加载实现]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137449278</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137449278</guid><author>chtazycdf</author><pubDate>Sun, 07 Apr 2024 09:21:42 +0800</pubDate><description><![CDATA[JavaScript 现在有两种模块。一种是 ES6 模块，简称 ESM；另一种是 CommonJS 模块，简称 CJS。CommonJS 模块是 Node.js 专用的，与 ES6 模块不兼容。语法上面，两者最明显的差异是，CommonJS 模块使用require()和，ES6 模块使用import和export。它们采用不同的加载方案。从 Node.js v13.2 版本开始，Node.js 已经默认打开了 ES6 模块支持。Node.js 要求 ES6 模块采用.mjs后缀文件名。]]></description><category></category></item><item><title><![CDATA[ES6——24、Module 的语法]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137429393</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137429393</guid><author>chtazycdf</author><pubDate>Sat, 06 Apr 2024 15:35:36 +0800</pubDate><description><![CDATA[历史上，JavaScript 一直没有模块（module）体系，无法将一个大程序拆分成互相依赖的小文件，再用简单的方法拼装起来。其他语言都有这项功能，比如 Ruby 的require、Python 的import，甚至就连 CSS 都有@import，但是 JavaScript 任何这方面的支持都没有，这对开发大型的、复杂的项目形成了巨大障碍。在 ES6 之前，社区制定了一些模块加载方案，最主要的有 CommonJS 和 AMD 两种。前者用于服务器，后者用于浏览器。]]></description><category></category></item><item><title><![CDATA[ES6——23、Class 的继承]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137236338</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137236338</guid><author>chtazycdf</author><pubDate>Sat, 06 Apr 2024 15:18:25 +0800</pubDate><description><![CDATA[Class 可以通过extends关键字实现继承，让子类继承父类的属性和方法。extends 的写法比 ES5 的原型链继承，要清晰和方便很多。上面示例中，Point是父类，ColorPoint是子类，它通过extends关键字，继承了Point类的所有属性和方法。但是由于没有部署任何代码，所以这两个类完全一样，等于复制了一个Point类。下面，我们在ColorPoint内部加上代码。上面示例中，方法和toString()方法内部，都出现了super关键字。super。]]></description><category></category></item><item><title><![CDATA[typescript——15.命名空间和模块]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144878</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144878</guid><author>chtazycdf</author><pubDate>Wed, 03 Apr 2024 10:35:02 +0800</pubDate><description><![CDATA[这篇文章将概括介绍在TypeScript里使用模块与命名空间来组织代码的方法。我们也会谈及命名空间和模块的高级使用场景，和在使用它们的过程中常见的陷阱。查看模块章节了解关于模块的更多信息。查看命名空间章节了解关于命名空间的更多信息。]]></description><category></category></item><item><title><![CDATA[typescript——16.模块解析]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144907</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144907</guid><author>chtazycdf</author><pubDate>Wed, 03 Apr 2024 10:22:57 +0800</pubDate><description><![CDATA[这节假设你已经了解了模块的一些基本知识 请阅读文档了解更多信息。模块解析是指编译器在查找导入模块内容时所遵循的流程。假设有一个导入语句;为了去检查任何对a的使用，编译器需要准确的知道它表示什么，并且需要检查它的定义moduleA。这时候，编译器会有个疑问“moduleA的结构是怎样的？” 这听上去很简单，但moduleA可能在你写的某个.ts.tsx文件里或者在你的代码所依赖的.d.ts里。首先，编译器会尝试定位表示导入模块的文件。编译器会遵循以下二种策略之一：Classic或Node。]]></description><category></category></item><item><title><![CDATA[typescript——21.三斜线指令]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144991</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144991</guid><author>chtazycdf</author><pubDate>Wed, 03 Apr 2024 10:02:55 +0800</pubDate><description><![CDATA[三斜线指令是包含。。三斜线指令仅可放在包含它的文件的最顶端。一个三斜线指令的前面只能出现单行或多行注释，这包括其它的三斜线指令。如果它们出现在一个语句或声明之后，那么它们会被当做普通的单行注释，并且不具有特殊的涵义。]]></description><category></category></item><item><title><![CDATA[typescript——20.Mixins]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144965</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144965</guid><author>chtazycdf</author><pubDate>Wed, 03 Apr 2024 09:54:47 +0800</pubDate><description><![CDATA[除了传统的面向对象继承方式，还流行一种通过可重用组件创建类的方式，就是联合另一个简单类的代码。你可能在Scala等语言里对mixins及其特性已经很熟悉了，但它在JavaScript中也是很流行的。]]></description><category></category></item><item><title><![CDATA[typescript——17.声明合并]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144937</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144937</guid><author>chtazycdf</author><pubDate>Wed, 03 Apr 2024 09:51:43 +0800</pubDate><description><![CDATA[TypeScript中有些独特的概念可以在类型层面上描述JavaScript对象的模型。这其中尤其独特的一个例子是“声明合并”的概念。理解了这个概念，将有助于操作现有的JavaScript代码。同时，也会有助于理解更多高级抽象的概念。]]></description><category></category></item><item><title><![CDATA[typescript——11.Symbols]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144765</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144765</guid><author>chtazycdf</author><pubDate>Wed, 03 Apr 2024 08:47:30 +0800</pubDate><description><![CDATA[自ECMAScript 2015起，symbol成为了一种新的原生类型，就像number和string一样。symbol类型的值是通过Symbol构造函数创建的。Symbols是不可改变且唯一的。像字符串一样，symbols也可以被用做对象属性的键。Symbols也可以与计算出的属性名声明相结合来声明对象的属性和类成员。]]></description><category></category></item><item><title><![CDATA[ES6——22、Class 的基本语法]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137233001</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137233001</guid><author>chtazycdf</author><pubDate>Mon, 01 Apr 2024 15:54:05 +0800</pubDate><description><![CDATA[类的属性和方法，除非显式定义在其本身（即定义在this对象上），否则都是定义在原型上（即定义在class上）。this.x = x;this.y = y;上面代码中，x和y都是实例对象point自身的属性（因为定义在this对象上），所以方法返回true，而toString()是原型对象的属性（因为定义在Point类上），所以方法返回false。这些都与 ES5 的行为保持一致。]]></description><category></category></item><item><title><![CDATA[ES6——21、async 函数]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137231262</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137231262</guid><author>chtazycdf</author><pubDate>Mon, 01 Apr 2024 14:42:33 +0800</pubDate><description><![CDATA[ES2017 标准引入了 async 函数，使得异步操作变得更加方便。async 函数是什么？一句话，它就是 Generator 函数的语法糖。前文有一个 Generator 函数，依次读取两个文件。上面代码的函数gen可以写成async函数，就是下面这样。一比较就会发现，async函数就是将 Generator 函数的星号（）替换成async，将yield替换成await，仅此而已。]]></description><category></category></item><item><title><![CDATA[ES6——20. Generator 函数的异步应用]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137230254</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137230254</guid><author>chtazycdf</author><pubDate>Mon, 01 Apr 2024 14:09:58 +0800</pubDate><description><![CDATA[异步编程对 JavaScript 语言太重要。JavaScript 语言的执行环境是“单线程”的，如果没有异步编程，根本没法用，非卡死不可。本章主要介绍 Generator 函数如何完成异步操作。]]></description><category></category></item><item><title><![CDATA[typescript——14.命名空间]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144847</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144847</guid><author>chtazycdf</author><pubDate>Mon, 01 Apr 2024 10:31:31 +0800</pubDate><description><![CDATA[这篇文章描述了如何在TypeScript里使用命名空间（之前叫做“内部模块”）来组织你的代码。就像我们在术语说明里提到的那样，“内部模块”现在叫做“命名空间”。另外，任何使用 module关键字来声明一个内部模块的地方都应该使用namespace关键字来替换。这就避免了让新的使用者被相似的名称所迷惑。]]></description><category></category></item><item><title><![CDATA[typescript——13.模块]]></title><link>https://blog.youkuaiyun.com/chtazycdf/article/details/137144818</link><guid>https://blog.youkuaiyun.com/chtazycdf/article/details/137144818</guid><author>chtazycdf</author><pubDate>Mon, 01 Apr 2024 10:23:34 +0800</pubDate><description><![CDATA[从ECMAScript 2015开始，JavaScript引入了模块的概念。TypeScript也沿用这个概念。模块在其自身的作用域里执行，而不是在全局作用域里这意味着定义在一个模块里的变量，函数，类等等在模块外部是不可见的，除非你明确地使用export形式之一导出它们。相反，如果想使用其它模块导出的变量，函数，类，接口等的时候，你必须要导入它们，可以使用import形式之一。模块是自声明的两个模块之间的关系是通过在文件级别上使用imports和exports建立的。模块使用模块加载器去导入其它的模块。]]></description><category></category></item></channel></rss>