Weichanglu
每个人都受两种教育,一种来自别人,另一种更重要的是来自自己。
Toggle navigation
Weichanglu
Home
Me
Archive
Timeline
Tools
AngularJS
文字转语音
BING
bing 图
CSS
Loading
CSS形状
Chrome
JavaScript
Docker
Nginx
Linux
Chrome Extension
Github
Github Profile
Github Gist
wakatime
shields.io
simpleicons
visitor-badge
readme
图床
统计访问量
HEXO
HBuilderX
uniapp-cli
脚手架
依赖包
npm
node_modules
语法提示库
Browserslist
caniuse-liteIsOutdated
HTML
GitHub
Coding
Gitee
码云
Bespoke.js
Bespokejs
演示文稿微框架
Driver.js
Driverjs
前端引导页
分布式引导
Node
fullpage.js
debug
JavaSript
测试
node
notifier
集合
ES6
Websocket
canvas
正则
Lexical Scope(词法范围)
Closures(闭包)
Currying(柯里化)
区块链
Javascript
Web测试
Mac
定时任务
launchctl
rootless
更新node版本
跨域
反向代理
hosts
Tools
Rem
HTML5播放器
Plyr
javascript
Touch
3d-touch
Pressure
Pressurejs
pointer-events
RegEx
正则表达式
Xcode
Ionic
热更新
hotUpdate
🇨🇳
🇬🇧
工具
虚拟定位
手机定位
修改定位
iOS
Jenkins
自动化打包
mysql
my.cnf
python error
ERROR:root:code
window.location
jsDelivr
CDN
免费CDN
protocol buffer
DOM
Shadow Dom
Virtual Dom
github
reCAPTCHA
Google人机验证
gooreplacer
面试谜题
cli
AngularJS
AngularJS 依赖注入的实现
文字转语音
BD-text2audio 文字转语音免费接口
BD-text2audio
BING
[BING] 获取BING每日美图、构建API、每日抓取下载、部署私人服务器并存储
BING-获取BING每日美图
bing 图
[BING] 获取BING每日美图、构建API、每日抓取下载、部署私人服务器并存储
BING-获取BING每日美图
CSS
CSS 优化选择器 CSS与JS
RGB to HEX 在线转换器
CSS 中字体大小的CSS单位 [px em rem]
Pixel to Rem 在线转换器
[CSS] Loading css
CSS-Loading
Loading
[CSS] Loading css
CSS-Loading
CSS形状
值得收藏的[CSS]形状
Chrome
Chrome 使用DevTools检查叠加元素
你可能不知道你可以用Chrome的开发者控制台做的事情
[Extension] Chrome扩展程序开发
Extension-Chrome扩展程序开发
JavaScript
构建前端脚手架/cli知识
JavaScript 计算阶乘 - 迭代和递归
JavaScript 集合入门
JavaScript 中的 正则表达式 和 匹配字符串
JavaScript Node 检查文件或目录是否为空
JavaScript 使用 Cypress 进行端到端测试
JavaScript 中常见注意事项
JavaScript 中的 链判断运算符【?.】
JavaScript 中循环遍历数组
JavaScript 中在数组中查找元素
JavaScript 从对象中删除属性
JavaScript 使用node-notifier发送通知(Mac, Windows, Linux)
JavaScript 中的AJAX调用
JavaScript 中在数组开头添加元素
JavaScript 中合并两个或多个JSON对象
Chrome 使用DevTools检查叠加元素
JavaScript 中的错误处理
JavaScript中的Classes
JavaScript 中的调试技巧
JavaScript 中使用数组解构
JavaScript 中数组的forEach()和map()的区别
JavaScript 中使用对象解构
JavaScript 中随机排列数组
JavaScript 中清空数组
JavaScript 中等分数组
JavaScript 中替换字符串
JavaScript 中反转数组
JavaScript 中的数学常量和函数
JavaScript 中数组删除重复元素
JavaScript 中字符串第一个字母大写
JavaScript 中数组删除重复项
JavaScript中对数组进行排序
Array.sort()
JavaScript 中数组克隆
JavaScript 中的 Console-API
JavaScript 中的 console.table()
JavaScript 中 reduce() 函数
JavaScript 中简单获取unix时间戳
JavaScript 中new的返回值
JavaScript 中的逗号操作符
JavaScript 中取得文件扩展名
JavaScript 中的带重音字符的字符串排序
JavaScript 中的严格模式和lazy
JavaScript 中的 if 嵌套改善
JavaScript 中的包含方法
JavaScript 中的数组平均值和中位数
JavaScript 防止在AngularJs中创建不必要的作用域
JavaScript 中事件上下文中 Target 和 currentTarget 的区别
JavaScript 中的递归,迭代和尾部调用
JavaScript 中 textarea 自适应高度
JavaScript 中使用 canvas 元素平移和滚动背景图像
使用 JavaScript 解释区块链(Blockchain)
JavaScript 中的事件委托
JavaScript 中计算数组的最大值/最小值
JavaScript 中在函数参数中使用解构
JavaScript 中配置属性
JavaScript 中使用JSON.Stringify
JavaScript 中Object.is()
JavaScript 中ES6函数的默认参数
JavaScript 中检查对象中是否存在属性
JavaScript 中将节点列表转换为数组
JavaScript 中strict
JavaScript 中数组和单个元素编写单个方法
JavaScript 中undefined和null之间的区别.md
JavaScript 中粗箭头功能
JavaScript 中参数传递给回调函数
JavaScript 中的短路评估
三个有用的JS技巧
basicScroll – 独立视差滚动
Plyr 是一个简单、轻量级、可定制的HTML5播放器
JavaScript中的Async/Await
JavaScript中的Promises
Bespoke.js–基于浏览器的演示文稿微框架
Driver.js–页面分步引导
你可能不知道你可以用Chrome的开发者控制台做的事情
JavaScript中的call,bind和apply方法
JavaScript 中 == 和 === 比较运算符的区别
JavaScript中理解关于this关键字的所有信息
JavaScript中的 Lexical Scope(词法范围)、Closures(闭包)和Currying(柯里化)
JavaScript中的Object方法
JavaScript中const和Object.freeze()的区别
JavaScript中的var,let和const之间的区别
JavaScript 中 ES6 var VS let
JavaScript 中哈希映射
JS原生ajax请求、fetch
JS原生ajax请求-fetch
fullpage.js 使用
fullpage-js
Docker
Docker 搭建 JavaWeb 运行环境镜像(JDK7-Tomcat7)
Docker
Docker
Docker配置部署Nginx
Docker配置部署Nginx
Nginx
Nginx 重定向
Docker配置部署Nginx
Docker配置部署Nginx
Nginx 反向代理解决跨域、Mac配置hosts
Nginx-反向代理解决跨域-Mac配置hosts
Linux
EPEL源-是什么?
Chrome Extension
[Extension] Chrome扩展程序开发
Extension-Chrome扩展程序开发
Github
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
在GitHub搭建免费图床
Github搭建图床
Github Profile
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
Github Gist
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
wakatime
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
shields.io
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
simpleicons
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
visitor-badge
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
readme
GitHub 个人页的README文件 GitHub Profile
GitHub-Profile-GitHub个人首页
图床
在GitHub搭建免费图床
Github搭建图床
统计访问量
HEXO 添加访问量统计
HEXO-添加访问量统计
HEXO
Hexo博客部署到Coding、Gitee、GitHub
Hexo博客部署到Coding-gitee-GitHub
HEXO 引用本地资源
HEXO引用本地资源
HEXO搭建个人博客
HEXO搭建个人博客
hexo个人博客迁移问题
HEXO个人博客迁移
HBuilderX
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
uniapp-cli
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
脚手架
构建前端脚手架/cli知识
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
依赖包
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
npm
使用 Github,jsDelivr,TravisCI 搭建轻量 CDN
免费-快速-可靠CDN
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
node_modules
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
语法提示库
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
Browserslist
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
caniuse-liteIsOutdated
【HBuilderX】uniapp-cli更新node_modules/语法提示库
HBuilderX-uniapp-cli更新-语法提示库
HTML
虚拟DOM(Virtual Dom) VS 影子DOM(Shadow Dom)
HTML 中DOM加载完监听
GitHub
Hexo博客部署到Coding、Gitee、GitHub
Hexo博客部署到Coding-gitee-GitHub
使用 Github,jsDelivr,TravisCI 搭建轻量 CDN
免费-快速-可靠CDN
Coding
Hexo博客部署到Coding、Gitee、GitHub
Hexo博客部署到Coding-gitee-GitHub
Gitee
Hexo博客部署到Coding、Gitee、GitHub
Hexo博客部署到Coding-gitee-GitHub
码云
Hexo博客部署到Coding、Gitee、GitHub
Hexo博客部署到Coding-gitee-GitHub
Bespoke.js
Bespoke.js–基于浏览器的演示文稿微框架
Bespokejs
Bespoke.js–基于浏览器的演示文稿微框架
演示文稿微框架
Bespoke.js–基于浏览器的演示文稿微框架
Driver.js
Driver.js–页面分步引导
Driverjs
Driver.js–页面分步引导
前端引导页
Driver.js–页面分步引导
分布式引导
Driver.js–页面分步引导
Node
JavaScript Node 检查文件或目录是否为空
fullpage.js
fullpage.js 使用
fullpage-js
debug
使用 tap 快速 debug
JavaSript
使用 tap 快速 debug
测试
JavaScript 使用 Cypress 进行端到端测试
node
JavaScript 使用node-notifier发送通知(Mac, Windows, Linux)
notifier
JavaScript 使用node-notifier发送通知(Mac, Windows, Linux)
集合
JavaScript 集合入门
ES6
JavaScript 中ES6函数的默认参数
Websocket
JavaScript 中事件上下文中 Target 和 currentTarget 的区别
canvas
JavaScript 中使用 canvas 元素平移和滚动背景图像
正则
JavaScript 中的 正则表达式 和 匹配字符串
RegEx-正则表达式
RegEx-Test
Lexical Scope(词法范围)
JavaScript中的 Lexical Scope(词法范围)、Closures(闭包)和Currying(柯里化)
Closures(闭包)
JavaScript中的 Lexical Scope(词法范围)、Closures(闭包)和Currying(柯里化)
Currying(柯里化)
JavaScript中的 Lexical Scope(词法范围)、Closures(闭包)和Currying(柯里化)
区块链
使用 JavaScript 解释区块链(Blockchain)
区块链 解释 Blockchain Explained
Javascript
Javascript 中获取列表中的最后一个元素
Javascript 中更改元素的类-className和classList
Javascript 中的JS库Brython 介绍指南
Javascript 中如何重定向到另一个网页
Javascript 中 Date & 日期常用代码片段
Javascript 中拆分字符串
Javascript 中检查字符串是否以子字符串开头
Javascript 中将数组拆分为偶数块
Javascript 中动态合并两个对象的属性
Javascript 中检查字符串的第一个字母是否为大写
Javascript 中检查对象是否为数组
Javascript 中将元素插入到数组的特定索引中
Javascript 中使用Validator.js在Node.js中验证表单数据
Javascript 中在范围内生成随机数
Javascript 中的线性搜索
Javascript 中的二分查找
Javascript 中的合并排序
Javascript 中的快速排序
Javascript 中的提升
Javascript 中向回调方法传递参数
Javascript 中对数组洗牌、清空
Javascript 中过滤并排序字符串列表
Javascript 中避免修改和传递 `arguments` 给其他方法 — 影响优化
Javascript 中仅用一行代码生成 `[0, 1, ..., N-1]` 数列
Javascript 中的高级特性
Javascript 中了解传值机制
Web测试
Karma + Jasmine 构建 Web 测试环境
Karma-Jasmine-构建-Web-测试环境
Mac
Mac 定时任务 launchctl
Mac-定时任务-launchctl
Mac rootless机制 `Operation not permitted`
Mac-rootless机制
定时任务
Mac 定时任务 launchctl
Mac-定时任务-launchctl
launchctl
Mac 定时任务 launchctl
Mac-定时任务-launchctl
rootless
Mac rootless机制 `Operation not permitted`
Mac-rootless机制
更新node版本
Mac 更新node版本
Mac-更新node版本
跨域
Nginx 反向代理解决跨域、Mac配置hosts
Nginx-反向代理解决跨域-Mac配置hosts
反向代理
Nginx 反向代理解决跨域、Mac配置hosts
Nginx-反向代理解决跨域-Mac配置hosts
hosts
Nginx 反向代理解决跨域、Mac配置hosts
Nginx-反向代理解决跨域-Mac配置hosts
Tools
RGB to HEX 在线转换器
Pixel to Rem 在线转换器
Rem
Pixel to Rem 在线转换器
HTML5播放器
Plyr 是一个简单、轻量级、可定制的HTML5播放器
Plyr
Plyr 是一个简单、轻量级、可定制的HTML5播放器
javascript
Pressure.js – 用于处理Force Touch,3D Touch的JS库
Touch
Pressure.js – 用于处理Force Touch,3D Touch的JS库
3d-touch
Pressure.js – 用于处理Force Touch,3D Touch的JS库
Pressure
Pressure.js – 用于处理Force Touch,3D Touch的JS库
Pressurejs
Pressure.js – 用于处理Force Touch,3D Touch的JS库
pointer-events
Pressure.js – 用于处理Force Touch,3D Touch的JS库
RegEx
RegEx-正则表达式
RegEx-Test
正则表达式
RegEx-正则表达式
RegEx-Test
Xcode
XcodeBuildSetting中大小写设置
Xcode中BuildSetting大小写设置
Ionic
[Ionic] - ionic热更新
cordova热更新
热更新
[Ionic] - ionic热更新
cordova热更新
hotUpdate
[Ionic] - ionic热更新
cordova热更新
🇨🇳
Hello World
hello-world
🇬🇧
Hello World
hello-world
工具
iOS 修改设备定位 虚拟定位
iOS-virtualPositon
虚拟定位
iOS 修改设备定位 虚拟定位
iOS-virtualPositon
手机定位
iOS 修改设备定位 虚拟定位
iOS-virtualPositon
修改定位
iOS 修改设备定位 虚拟定位
iOS-virtualPositon
iOS
iOS利用 Jenkins 实现自动化打包(SVN版)
iOS利用Jenkins实现自动化打包(SVN版)
在iOS中Protocol Buffer(v3.3.0)的使用
在iOS中Protocol-Buffer-v3-3-0-的使用
Jenkins
iOS利用 Jenkins 实现自动化打包(SVN版)
iOS利用Jenkins实现自动化打包(SVN版)
自动化打包
iOS利用 Jenkins 实现自动化打包(SVN版)
iOS利用Jenkins实现自动化打包(SVN版)
mysql
mysql错误 ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
mysql错误ER-TRUNCATED-WRONG-VALUE-FOR-FIELD
my.cnf
mysql错误 ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
mysql错误ER-TRUNCATED-WRONG-VALUE-FOR-FIELD
python error
python:ERROR:root:code for hash md5 was not found.
python-error-root-code-for-hash-md5
ERROR:root:code
python:ERROR:root:code for hash md5 was not found.
python-error-root-code-for-hash-md5
window.location
window.location备忘录
jsDelivr
使用 Github,jsDelivr,TravisCI 搭建轻量 CDN
免费-快速-可靠CDN
CDN
使用 Github,jsDelivr,TravisCI 搭建轻量 CDN
免费-快速-可靠CDN
免费CDN
使用 Github,jsDelivr,TravisCI 搭建轻量 CDN
免费-快速-可靠CDN
protocol buffer
在iOS中Protocol Buffer(v3.3.0)的使用
在iOS中Protocol-Buffer-v3-3-0-的使用
DOM
虚拟DOM(Virtual Dom) VS 影子DOM(Shadow Dom)
Shadow Dom
虚拟DOM(Virtual Dom) VS 影子DOM(Shadow Dom)
Virtual Dom
虚拟DOM(Virtual Dom) VS 影子DOM(Shadow Dom)
github
github 将使用token代替密码
reCAPTCHA
国内解决 reCAPTCHA 无法访问
解决recaptcha无法访问
Google人机验证
国内解决 reCAPTCHA 无法访问
解决recaptcha无法访问
gooreplacer
国内解决 reCAPTCHA 无法访问
解决recaptcha无法访问
面试谜题
1个灯泡3个开关 谜题
6的数学 谜题
cli
构建前端脚手架/cli知识
搜索