Promise
异步编程是什么异步编程
fs 文件操作 1require('fs').readFile('./index.html', (err,data)=>{})
数据库操作
AJAX 1$.get('/server', (data)=>{})
定时器 1setTimeout(()=>{}, 2000);
为什么要用 Promise1.2.1. 指定回调函数的方式更加灵活
旧的: 必须在启动异步任务前指定
promise: 启动异步任务 => 返回promie对象 => 给promise对象绑定回调函数(甚至可以在异步任务结束后指定/多个)
1.2.2. 支持链式调用, 可以解决回调地狱问题
什么是回调地狱? 回调函数嵌套调用, 外部回调函数异步执行的结果是嵌套的回调执行的条件
回调地狱的缺点?
不便于阅读
不便于异常处理
使用1.promise实现对定时器的封装。123456789101112131415161718 ...
Vue3基础
一、Vue3.0基础github上的tags地址:https://github.com/vuejs/vue-next/releases/tag/v3.0.0
新的特性
Composition API(组合API)
setup配置
ref与reactive
watch与watchEffect
provide与inject
……
新的内置组件
Fragment
Teleport
Suspense
其他改变
新的生命周期钩子
data 选项应始终被声明为一个函数
移除keyCode支持作为 v-on 的修饰符
……
创建vue3.0工程使用vue-cli官方文档:https://cli.vuejs.org/zh/guide/creating-a-project.html#vue-create
123456789## 查看@vue/cli版本,确保@vue/cli版本在4.5.0以上vue --version## 安装或者升级你的@vue/clinpm install -g @vue/cli## 创建vue create vue_test## 启动cd vue_testn ...
TypeScript
TypeScript简介
TypeScript是JavaScript的超集。
它对JS进行了扩展,向JS中引入了类型的概念,并添加了许多新的特性。
TS代码需要通过编译器编译为JS,然后再交由JS解析器执行。
TS完全兼容JS,换言之,任何的JS代码都可以直接当成JS使用。
相较于JS而言,TS拥有了静态类型,更加严格的语法,更强大的功能;TS可以在代码执行前就完成代码的检查,减小了运行时异常的出现的几率;TS代码可以编译为任意版本的JS代码,可有效解决不同JS运行环境的兼容问题;同样的功能,TS的代码量要大于JS,但由于TS的代码结构更加清晰,变量类型更加明确,在后期代码的维护中TS却远远胜于JS。
全局安装:npm i -g typescript
创建一个ts文件,编译:tsc xxx.ts
基本类型类型声明
类型声明是TS非常重要的一个特点
通过类型声明可以指定TS中变量(参数、形参)的类型
指定类型后,当为变量赋值时,TS编译器会自动检查值是否符合类型声明,符合则赋值,否则报错
简而言之,类型声明给变量设置了类型,使得变量只能存储某种类型的值
语法:
1234567l ...
k8s中的副本控制器
Replication Controller详解Replication Controller简称RC,它能够保证Pod持续运行,并且在任何时候都有指定数量的Pod副本,在此基础上提供一些高级特性,比如滚动升级和弹性伸缩。
确保pod数量:它会确保Kubernetes中有指定数量的Pod在运行。如果少于指定数量的pod,Replication Controller会创建新的,反之则会删除掉多余的以保证Pod数量不变。
确保pod健康:当pod不健康,运行出错或者无法提供服务时,Replication Controller也会杀死不健康的pod,重新创建新的。
弹性伸缩 :在业务高峰或者低峰期的时候,可以通过Replication Controller动态的调整pod的数量来提高资源的利用率。同时,配置相应的监控功能(Hroizontal Pod Autoscaler),会定时自动从监控平台获取Replication Controller关联pod的整体资源使用情况,做到自动伸缩。
滚动升级:滚动升级为一种平滑的升级方式,通过逐步替换的策略,保证整体系统的稳定,在初始化升级的时候就可以及 ...
Vue路由
vue路由解释vue 的一个插件库,专门用来实现 SPA 应用
单页 Web 应用(single page web application,SPA)。
整个应用只有一个完整的页面。
点击页面中的导航链接不会刷新页面,只会做页面的局部更新。
数据需要通过 ajax 请求获取。
什么是路由?
一个路由就是一组映射关系(key - value)
key 为路径, value 可能是 function 或 component
路由分类
后端路由:
理解:value 是 function, 用于处理客户端提交的请求。
工作过程:服务器接收到一个请求时, 根据请求路径找到匹配的函数 来处理请求, 返回响应数据。
前端路由:
理解:value 是 component,用于展示页面内容。
工作过程:当浏览器的路径改变时, 对应的组件就会显示。
基本路由基本使用
安装vue-router,命令:npm i vue-router
应用插件:Vue.use(VueRouter)
编写router配置项:
123456789101112131415161718192021 ...
Vue组件
Vue组件化编程为什么要用组件?传统方式编写应用
组件方式编写应用
模块:
向外提供特定功能的 js 程序, 一般就是一个 js 文件
作用: 复用 js, 简化 js 的编写, 提高 js 运行效率
当应用中的js 都以模块来编写的, 那这个应用就是一个模块化的应用。
组件:实现应用中局部功能代码和资源的集合
用来实现局部(特定)功能效果的代码集合(html/css/js/image…..)
复用编码, 简化项目编码, 提高运行效率
当应用中的功能都是多组件的方式来编写的, 那这个应用就是一个组件化的应用,。
组件的编写非单文件组件一个文件中包含n个组件
1234567891011<div id="root"> <hello></hello> <hr> <h1>{{msg}}</h1> <hr> <!-- 第三步:编写组件标签 --> <school></sch ...
Vue基础
简介Vue官网: https://cn.vuejs.org/
动态构建用户界面的渐进式JavaScript框架
特点:
遵循MVVM模式
编码简洁,体积小,运行效率高,适合PC/移动端开发
只关注UI,可以引入第三方库开发项目
与其他框架的关联:
借鉴Angular的模板和数据绑定技术
借鉴React的组件化和虚拟DOM技术
周边库:
vue-cli:vue脚手架
vue-resource
axios
vue-router:路由
vuex:状态管理
…
起步1234567891011121314151617181920212223242526272829<!DOCTYPE html><html> <head> <meta charset="UTF-8" /> <title>初识Vue</title> <!-- 引入Vue --> <script type="text/javascript" src="../js/vue.js" ...
jQuery
第一章 认识jQuery1.1 什么是jQuery是一个组件库,简化JavaScript开发人员遍历HTML文档、操作DOM、处理事件、执行动画和开发Ajax。
优势
轻量级。采用Packer压缩后只有不到30kb
强大的选择器。使用CSS1到CSS3所有的选择器,以及jQueryz独创的高级选择器,还可以加入插件使其支持Xpath选择器,甚至自己的选择器。
出色的DOM操作封装。
可靠的事件处理机制。预留退路、循序渐进、非侵入式**
完善的Ajax。专心处理业务逻辑,无需关系复杂的浏览器兼容性和XMLHttpRequest对象创建和使用。
不污染的顶级遍历。只建立一个名为jQuery的对象。不会污染其他对象。可以与其他JavaScript库并存。
出色的浏览器兼容。
链式操作方式。发生在同一个jQuery对象上的一组动作
隐式迭代。当jQuery找到全部元素时,然后隐藏它们,无需循环遍历每一个返回的元素。
行为层和结构层的分离。可以直接使用jQuery选中元素,直接添加事件。
插件支持。
完善文档、
开源
库说明
名称
大学
说明
jquery-1.3.1.js
113K ...
代码整洁之道
前言 细节决定成败。
习艺之要有二:知和行,学而用。整洁代码,需要自行实践,体验自己的失败。观测他人的实践与失败。阅读代码–大量代码。代码好在什么地方,坏在什么地方。
第一章、整洁代码 2个原因:第一,你是个程序员;第二,你想成为更好的程序员。
1.1 要有代码 代码呈现了需求的细节。细节无法被忽略或抽象。代码确然是我们最终用来表达需求的那种语言。我们可以创造帮助把需求解析和汇整为正式结构的各种工具。但是我们无法抛弃必要的精确性,所以代码用存。
1.2 糟糕的代码 沼泽(wading)。我们趟过代码的水域,我们穿过灌木密布、瀑布暗藏的沼泽地。我们拼命的想寻找出路,期望有什么线索能启发我们到底发生了什么事:但目光所及,只是越来越多死气沉沉的代码。
勒布朗法则:稍后等于永不(Later equals never)。
1.3 混乱的代价 对代码的每次修改都影响到其他两到三处代码,修改无小事。
1.3.1 新设计 当旧系统无法在开发时。就会开发全新的设计。会诞生两两个团队,新团队开发一套新系统,必须实现旧系统的所有功能,另外, ...
Html
一、了解超文本标记语言
W3C 万维网联盟(http://www.w3.org)
结构化标准(HTML、XML)
表现标准语言(CSS)
行为标准(DOM、ECMAScript)js
二、网页基本信息123456789101112131415161718<!-- 告诉浏览器,我们要使用什么规范 --><!DCOTYPE html><html lang="en"> <!-- 网页头部 --> <head> <!-- 描述性标签, 描述网站的一些信息--> <!-- 一般用来做SEO--> <meta charset="UTF-8"> <meta name="keywords" content="练习"> <meta name="description" content="这个地方用来练习& ...