- 博客(52)
- 资源 (1)
- 收藏
- 关注
原创 apply、call、bind
apply 数组参数call 正常参数bind 绑定不执行函数,正常参数,可以改变显示传参顺序function f() { console.log("参数", arguments);}f.apply(null, [1, 2, 3]); // 参数 { '0': 1, '1': 2, '2': 3 }f.call(null, 1, 2, 3); // 参数 { '0': 1, ...
2019-07-31 14:59:05 165
原创 浏览器缓存
浏览器缓存分为强缓存和协商缓存。当客户端请求某个资源时,获取缓存的流程如下先根据这个资源的一些 http header 判断它是否命中强缓存,如果命中,则直接从本地获取缓存资源,不会发请求到服务器;当强缓存没有命中时,客户端会发送请求到服务器,服务器通过另一些 request header验证这个资源是否命中协商缓存,称为 http再验证,如果命中,服务器将请求返回,但不返回资源,而是告诉客...
2019-07-31 14:58:04 208
原创 react-create-app打包自动化(zip,ftp)
可能用到的包 filemanager-webpack-plugin webpack-ftp-plugin jsftp下面四个使用,报错,不知为什吗 zip-webpack-plugin webpack-zip-plugin webpack-ftp-plugin webpack-ftp-upload-plugin提醒FTP账户写权限...
2018-05-22 14:09:29 1404
原创 CSS字数超出自动添加省略号,纯数字换行
效果图 代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport"
2018-03-08 17:38:22 5815
原创 订阅号JS-SDK的使用,后台Node.js遇到的问题及解决办法
官网步骤步骤一:绑定域名 步骤二:引入JS文件步骤三:通过config接口注入权限验证配置步骤四:通过ready接口处理成功验证步骤五:通过error接口处理失败验证问题 着重说明第三步获取access_token1. 请求https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credent
2018-01-19 18:22:44 376
原创 Egg.js 中 AJax 上传文件获取参数
依赖代码前端Node依赖formidable代码前端fieldset style="margin: 20px; padding: 20px;"> legend>单文件,Ajaxlegend> form id="form3"> div> input type="text" id="customName" pla
2018-01-16 09:27:43 3783 2
原创 qr-image 在 Egg.js 中的使用
安装yarn add qr-image使用img src="/qrcode?text=hello Egg.js" alt="二维码"/>'use strict';const qr = require('qr-image');const { Controller } = require('egg');class UtilsController extends
2018-01-15 16:14:25 2492
原创 deepin react-native 开发环境搭建
Nodejs安装Yarn安装create-react-native-appexpo预览APP搭建过程二三事Node.js安装下载安装包https://nodejs.org/zh-cn/安装# 解压tar xvf node-v8.9.3-linux-x64.tar.xz# 复制到你喜欢的目录 ~/software/mv node-v8.9.3-
2017-12-23 20:45:22 1138
原创 safari new Date()参数问题
chrome 版本 61.0.3163.100(正式版本) (64 位)new Date(1512704205962);// Fri Dec 08 2017 11:36:45 GMT+0800 (中国标准时间)new Date('2017.12.8 11:36:45');// Fri Dec 08 2017 11:36:45 GMT+0800 (中国标准时间)new Date('2017-
2017-12-08 11:48:09 1346
原创 win10到优麒麟到深度系统
英语渣渣lenvon v470c 太老了,win7,win10都不行了,一卡一卡的,因此想到了使用Linux系统做开发机器。首先找到了优麒麟Ubuntu Kylin17.10,发现和windows如出一辙啊,这样挺好,但是网络总是断开,不知道什么原因。查找原因的过程中看到了深度系统deepin15.5,开始安装,非常漂亮(和MAC界面好像啊)安装过程,U盘安装win10
2017-12-08 11:29:02 16984 2
原创 阿里云播放器单击切换播放/暂停
var player = new Aliplayer({ id: 'J_prismPlayer', width: '100%', autoplay: false, //支持播放地址播放,此播放优先级最高 source: '播放url', //播放方式二:推荐 vid: '1e067a2831b641db90d570b6480fbc40', playauth: '',
2017-11-09 18:13:18 6639
原创 阿里云视频点播指定清晰度
因为播放器有记忆功能,发现该功能是由cookie来实现的。 所以,就可以通过设定cookie值来达到指定清晰度的目的 /** * 设置播放清晰度 key selectedStreamLevel * 原画 OD * 标清 LD * 流畅 FD * @param streamLevel */ function setStreamLevel(streamLevel) {
2017-11-09 11:36:55 4084
原创 自执行函数的优点
保护内部变量不受污染(function() { function init() { console.log('init'); handleA(); } function handleA() { console.log('handleA'); handleB(); } function handleB() { console.log('handl
2017-11-08 18:15:40 1824
转载 字符在字符串中出现的次数和位置
问题:字符e 在字符串 str 出现的次数和位置var str = 'To be, or not to be, that is the question.';var count = 0; // 出现的次数var countArr = []; // 出现的位置字符串方式实现 ndexOf() 方法返回调用 String 对象中第一次出现的指定值的索引,开始在 fromIndex进行搜
2017-11-03 14:40:24 3202
原创 项目选型
图表的选择 echarts构建工具 gulp webpack库的选择代码规范技术栈项目代码 更新时间:2018年1月23日09:37:04图表的选择 echartsecharts http://echarts.baidu.com/国人开发,文档全,便于开发和阅读文档图表丰富highcharts https://www.hcharts.cn/非
2017-03-01 10:15:03 641
原创 requestFullscreen触发事件click/pointerdown
firefox: requestFullscreen click 可以触发,pointer 无效 chrome: requestFullscreen click/pointer 均可触发参考代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>requestFullscreen</title></
2017-02-16 16:04:35 2068
原创 使用webpack编译TypeScript,自动编译,自动刷新
1.clone 代码git clone git@github.com:liqianglai/JavaScript-study.git2.全局安装npm install -g webpack webpack-dev-server typescript2.安装项目依赖cd typescript-webpack && npm install3.编译、运行npm run buildnpm run dev4
2016-12-23 14:57:07 2747
转载 SSE:服务器发送事件
详情查看SSE:服务器发送事件概述 传统的网页都是浏览器向服务器“查询”数据,但是很多场合,最有效的方式是服务器向浏览器“发送”数据。比如,每当收到新的电子邮件,服务器就向浏览器发送一个“通知”,这要比浏览器按时向服务器查询(polling)更有效率。node代码 server.jsvar http = require("http");http.createServer(function (r
2016-12-15 17:29:33 1352
原创 测试Canvas的drawImage方法
html代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>测试drawImage</title> <style> * { margin: 0; padding: 0; } </style></head><body><fieldset> <le
2016-12-15 10:58:45 2517
原创 json-server快速“伪造”后台接口
环境需要安装 node https://nodejs.org/en/开始新建项目 mkdir rest-api-demo && cd rest-api-demo初始化项目 npm init安装 npm install --save-dev json-server在项目根目录下,新建一个 JSON 文件db.json{ "posts": [ { "id": 1, "title":
2016-12-06 16:04:57 16007
原创 JavaScript函数调用返回问题
三种方式,返回同样的结果let f1 = (): Promise=> { return new Promise((resolve, reject)=> { resolve("f1"); });}let f2 = (str): Promise=> { return new Promise((resolve, reject)=> { resolve("f2" + str)
2016-11-14 10:11:36 387
原创 indexedDB入门
本文主要讲述了indexedDB的初步使用, 主要包括数据的增、删、改、查、和索引的创建和查询1. 检查浏览器是否支持indexedDBwindow.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;window.IDBTrans
2016-10-21 15:24:07 535
原创 JavaScript栈的实现和回文判断
JavaScript栈的实现:function Stack() { this.dataStore = []; this.top = 0; this.push = function (element) { this.dataStore[this.top++] = element; }; this.pop = function () { return this.dat
2016-08-23 14:46:27 724
原创 SVG模拟时钟
<!DOCTYPE html><html><head> <meta charset="utf-8"/> <title></title> <style> * { margin: 0; } </style></head><body><svg width="400" height="400"> <title>SVG Analog Clock</titl
2016-08-10 15:31:15 578
原创 JavaScript Switch
直接上代码function getIconByFormat(format) { var icon = ''; switch (format) { case 'ppt': icon = 'ppt'; break; case 'doc': case 'docx': icon = 'word'; break; case
2016-08-04 09:12:15 253
转载 浏览器 user-agent 字符串的故事
浏览器 User-Agent 字符串的故事 原文:http://webaim.org/blog/user-agent-string-history/ 译文:http://www.cnblogs.com/ifantastic/p/3481231.html 译者:iFantasticMe你是否好奇标识浏览器身份的User-Agent,为什么每个浏览器都有Mozilla字样?故事还得从头
2016-07-01 16:46:19 521
原创 备课大师控件开发流程
一个控件包含 html代码(控件结构) css代码(控件外观) ts代码(控件编辑态功能) js代码(控件放映态功能)html代码放入 editor-shell.xhtml<div class="virtualtool" data-control="mainbo_virtualtool"> <div class="basket"> <div class="baske
2016-06-24 11:36:17 449
转载 Promise系列06:Promise API Reference
1. Promise#then promise.then(onFulfilled, onRejected);var promise = new Promise(function(resolve, reject){ resolve("传递给then的值");});promise.then(function (value) { console.log(value);}, fu
2016-06-15 17:48:11 328
转载 Promise系列05:Promise应用
Ajax操作是典型的异步操作,传统上往往写成下面这样。function search(term, onload, onerror) { var xhr, results, url; url = 'http://example.com/search?q=' + term; xhr = new XMLHttpRequest(); xhr.open('GET', url, true);
2016-06-15 17:06:48 222
转载 Promise系列04:Promise用法解析
Promise的用法,简单说就是一句话:使用then方法添加回调函数。 但是,不同的写法有一些细微的差别,请看下面四种写法,它们的差别在哪里?// 写法一doSomething().then(function () { return doSomethingElse();});// 写法二doSomething().then(function () { doSomethingElse(
2016-06-15 11:23:37 1344
转载 Promise系列03:Promise状态
Promise对象只有三种状态。 异步操作“未完成”(pending) 异步操作“已完成”(resolved,又称fulfilled) 异步操作“失败”(rejected)这三种的状态的变化途径只有两种且不可逆 异步操作从“未完成”到“已完成” 异步操作从“未完成”到“失败”。因此,Promise对象的最终结果只有两种。 异步操作成功,Promise对象传回一个值,
2016-06-15 10:59:16 667
转载 Promise系列02:Promise创建
ES6提供了原生的Promise构造函数,用来生成Promise实例。下面代码创造了一个Promise实例。var promise = new Promise(function(resolve, reject) { // 异步操作的代码 if (/* 异步操作成功 */){ resolve(value); } else { reject(error); }});re
2016-06-15 10:55:57 415
转载 Promise系列01:初识Promise
Promise 对象用于异步(asynchronous ) 计算.。一个Promise对象代表着一个还未完成,但预期将来会完成的操作。// 传统写法step1(function (value1) { step2(value1, function(value2) { step3(value2, function(value3) { step4(value3, function
2016-06-15 10:24:05 332
转载 html meta
meta 标签可提供页面元素信息, 使用键值对的定义方式,可以记录网页上的主要信息,可以自定义键值对属性 content(必须) , name, http-equiv, scheme, lang常用 meta 头:设置编码信息 <meta http-equiv="Content-Type" Content="text/html; Charset=utf-
2015-06-25 15:03:43 430
转载 iPhone safari冒泡问题
转载自: http://www.cnblogs.com/xdoudou/p/3991163.htmliPhone safari浏览器的冒泡问题:1.点击某个DIV或其他元素。2.发现没有处理该事件,继续往上冒泡。3.直到冒泡到body下面的子节点为止,还是没有人处理该事件的话,就把该事件丢弃掉。不再往上冒泡。4.只要在这一条冒泡链当中,有一个节点处理了该事件,它就不会丢弃该事件,会继续往上冒,
2015-05-08 10:41:27 950
原创 js函数调用
function aaa(){ console.log(“aaa”); }// demo1,点击页面是控制台输出aaa document.onclick = function(){ aaa(); }// demo2,不需要点击,控制台自动输出aaa document.onclick = aaa();
2015-05-06 13:12:03 399
转载 CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
准备篇:1、配置防火墙,开启80端口、3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j AC
2014-07-28 17:53:29 651
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人