Learning Path
浏览 开发笔记 相关教程与章节。
社区笔记、经验文章、测验题库与零散教程入口。
教程
1237
div 添加滚动条只需要指定 overflow 属性为 auto 即可,以下实例设置了 div 水平滚动条: 实例 [mycode3 type='html'] 菜鸟教程 -- 学的不仅是技术,更是梦想!!! 菜鸟教程 -- 学的不仅是技术,更是梦想!!! 菜鸟教程 -- 学的不仅是技术,更是梦想!!! 菜鸟教程 -- 学的不仅是技术,更是梦想!!! [/mycode3] 尝试一下 » 宽度(width..
概述:长时间以来,我们创造了某些在构造和范围内用以提升网站易用性的约定和实践。然后在我们进行web编程的时候总有一些疏忽和纰漏。这里总结了一些web编程时容易出现的小错误,并给出了相应的补救方法,希望可以帮助提高网站的可用性。只要避免下列这些错误,网站的用户体验度就会大大提升。 错误一: 表单标签没有与相应字段相关联 利用 'for' 属性,使客户可以通过点击标签在表格内选择正确的输入字段。这对于复选框和..
本文转载自51CTO(ID:weixin51cto),作者:熊小妹 在 2006 年,我开始了编程工作。当意识到来到了十年这个重要的时间关口时,我觉得有必要回顾一下这十年间所犯下的错误,做一做经验总结,并且给正在这个职业上奋斗的人们提出我的一些忠告。开发行业变化得很快,我无法肯定在未来十年里这些建议是否一直有效,但相信我的话对你们是肯定有所帮助的,不管是刚开始工作的新手还是工作几年的老手。 要坚持使用一个开发平台,框架或语言 ..
杀死所有正在运行的容器 docker kill $(docker ps -a -q) 删除所有已经停止的容器 docker rm $(docker ps -a -q) 删除所有未打 dangling 标签的镜像 docker rmi $(docker images -q -f dangling=true) 通过镜像的id来删除指定镜像 docker rmi 删除所有镜像 docker rmi $(docker images..
关于docker容器和镜像的关系 无论容器里做什么操作,写文件,删文件。该容器的基本镜像都不会有任何改变。这是因为Docker从父镜像建立增量镜像,只存储每个容器的更改。因此,如果你有一个300MB的父镜像,如果你在容器中安装了50MB的额外应用或服务,你的容器只有50MB,父镜像还是300MB。 但是可以使用Dockfile或commit命令来,把增量镜像和父镜像一起生成一个新的镜像。 dock top -- 显示容器中运行的进程..
Docker 进入 ubuntu 容器 我们可以使用 docker run命令进入 ubuntu 容器: $ sudo docker run -t -i ubuntu:14.04 /bin/bash ubuntu:14.04 为镜像名,参数说明: -t 表示在新容器内指定一个伪终端或终端-i 表示允许我们对容器内的 (STDIN) 进行交互。 我们在容器内还指定了一个新的命令: /bin/bash ,这将在容器内启动 bash s..
HTML5 a 标签可以使用 download 属性来设置资源的下载,但需要是同源,如果浏览器可以解析也会直接打开。 这时我们可以通过第三方库 download 来实现更完整的下载功能。 download.js 相关资源: Github 地址:https://github.com/rndme/download CDN 库:https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/do..
Eclipse有强大的编辑功能, 工欲善其事,必先利其器, 掌握Eclipse快捷键,可以大大提高工作效率。 注释 Ctrl+/ 能为光标'所在行'或者'选中行'添加注释或者取消注释。也可以对多行添加或取消注释 快速修复 Ctrl + 1 删除当前行 Ctrl+d 光标位于行的任何地方, 按Ctrl+D 删除当前行, 当然也可以删除空行, 不用为了删除行,而按很多删除键了 ..
做 java 开发的,经常会用 Eclipse 或者 MyEclise 集成开发环境,一些实用的 Eclipse 快捷键和使用技巧,可以在平常开发中节约出很多时间提高工作效率,下面我就结合自己开发中的使用和大家分享一下 Eclipse 中常用到的快捷键和技巧。 15 个 Eclipse 常用开发快捷键使用技巧 1、alt+? 或 alt+/:自动补全代码或者提示代码 这个是我最得意的快捷键组合了,尤其是当输入 syso 几个字符之后,..
电脑需要操作系统,手机也需要,2007 年,苹果带着旗下第一款智能手机 iPhone 和第一款操作系统亮相,从而奠定了改变世界的基础。8 年时间以来,iPhone 一直在不停的进化、演变,iOS 操作系统也是一样。iOS中包含许多实用的功能,其中很多功能用户已经无法离开,比如 iMessage、App Store、FaceTime、Siri、iCloud 以及 Apple Pay 等。 iOS 9 操作系统将于几天后正式发布,今..
嵌入式开发必备技能图谱, 点击查看大图:..
数组创建 Array.of() 将参数中所有值作为元素形成数组。 [mycode3 type='js']console.log(Array.of(1, 2, 3, 4)); // [1, 2, 3, 4] // 参数值可为不同类型 console.log(Array.of(1, '2', true)); // [1, '2', true] // 参数为空时返回空数组 con..
async async 是 ES7 才有的与异步操作有关的关键字,和 Promise , Generator 有很大关联的。 语法 async function name([param[, param[, ... param]]]) { statements } name: 函数名称。 param: 要传递给函数的参数的名称。 statements: 函数体语句。 返回值 async 函数返回一个 Promise ..
概述 在ES6中,class (类)作为对象的模板被引入,可以通过 class 关键字定义类。 class 的本质是 function。 它可以看作一个语法糖,让对象原型的写法更加清晰、更像面向对象编程的语法。 基础用法 类定义 类表达式可以为匿名或命名。 [mycode3 type='js']// 匿名类 let Example = class { constructor(a) { thi..
ECMAScript 6 目前基本成为业界标准,它的普及速度比 ES5 要快很多,主要原因是现代浏览器对 ES6 的支持相当迅速,尤其是 Chrome 和 Firefox 浏览器,已经支持 ES6 中绝大多数的特性。 1. let、const 和 block 作用域 let 允许创建块级作用域,ES6 推荐在函数中使用 let 定义变量,而非 var: var a = 2; { let a = 3; console.lo..
函数参数的扩展 默认参数 基本用法 [mycode3 type='js']function fn(name,age=17){ console.log(name+','+age); } fn('Amy',18); // Amy,18 fn('Amy',''); // Amy, fn('Amy'); // A..
ES6 新引入了 Generator 函数,可以通过 yield 关键字,把函数的执行流挂起,为改变执行流程提供了可能,从而为异步编程提供解决方案。 基本用法 Generator 函数组成 Generator 有两个区分于普通函数的部分: 一是在 function 后面,函数名之前有个 * ; 函数内部有 yield 表达式。 其中 * 用来表示函数为 Generator 函数,yield 用来定义函数内部的状态。 [mycode3 ..
ES2015(ES6) 新增加了两个重要的 JavaScript 关键字: let 和 const。 let 声明的变量只在 let 命令所在的代码块内有效。 const 声明一个只读的常量,一旦声明,常量的值就不能改变。 let 命令 基本用法: [mycode3 type='js'] { let a = 0; a // 0 } a // 报错 ReferenceError: a is ..
Map 对象 Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。 Maps 和 Objects 的区别 一个 Object 的键只能是字符串或者 Symbols,但一个 Map 的键可以是任意值。 Map 中的键值是有序的(FIFO 原则),而添加到对象中的键则不是。 Map 的键值对个数可以从 size 属性获取,而 Object 的键值对个数只能手动计算。 Object 都有自己的原型,原型链上的键名有可..
概述 在 ES6 前, 实现模块化使用的是 RequireJS 或者 seaJS(分别是基于 AMD 规范的模块化库, 和基于 CMD 规范的模块化库)。 ES6 引入了模块化,其设计思想是在编译时就能确定模块的依赖关系,以及输入和输出的变量。 ES6 的模块化分为导出(export) @与导入(import)两个模块。 特点 ES6 的模块自动开启严格模式,不管你有没有在模块头部加上 use strict;。 模块中可以导入和导出各..
数值的表示 二进制表示法新写法: 前缀 0b 或 0B 。 console.log(0b11 === 3); // true console.log(0B11 === 3); // true 八进制表示法新写法: 前缀 0o 或 0O 。 console.log(0o11 === 9); // true console.log(0O11 === 9); // true 常量 Number.EPSILON Number.EPSILON 属..
对象字面量 属性的简洁表示法 ES6允许对象的属性直接写变量,这时候属性名是变量名,属性值是变量值。 [mycode3 type='js'] const age = 12; const name = 'Amy'; const person = {age, name}; person //{age: 12, name: 'Amy'} //等同于 const perso..
概述 是异步编程的一种解决方案。 从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。 Promise 状态 状态的特点 Promise 异步操作有三种状态:pending(进行中)、fulfilled(已成功)和 rejected(已失败)。除了异步操作的结果,任何其他操作都无法改变这个状态。 Promise 对象只有:从 pending 变为 fulfilled 和从 pending 变为 rejected 的状态改..
概述 Proxy 与 Reflect 是 ES6 为了操作对象引入的 API 。 Proxy 可以对目标对象的读取、函数调用等操作进行拦截,然后进行操作处理。它不直接操作对象,而是像代理模式,通过对象的代理对象进行操作,在进行这些操作时,可以添加一些需要的额外操作。 Reflect 可以用于获取目标对象的行为,它与 Object 类似,但是更易读,为操作对象提供了一种更优雅的方式。它的方法与 Proxy 是对应的。 基本用法 Pro..