gp更新来的太快
意外总是会发生
添加一个判断function的分支,过滤掉function,其实也考虑再进一步去分析它的作用,稍后再议。
更新一下
var gnp = {
get: function(url) {
return this._get(url, true)
},
synget: function(url) {
return this._get(url, false)
},
_get: function(url, syn) {
const promise = new Promise(function(resolve, reject) {
const handler = function() {
if(this.readyState !== 4) {
return;
}
if(this.status === 200) {
resolve(this.response);
} else {
reject(new Error(this.statusText));
}
}
var request = new XMLHttpRequest()
request.open('GET', url, syn)
request.onreadystatechange = handler
request.send(null)
})
return promise
},
post: function(url, data) {
return this._post(url, data, true)
},
synpost: function(url, data) {
return this._post(url, data, false)
},
_post: function(url, data, syn) {
const promise = new Promise(function(resolve, reject) {
const handler = function() {
if(this.readyState !== 4) {
return;
}
if(this.status === 200) {
resolve(this.response);
} else {
reject(new Error(this.statusText));
}
}
var request = new XMLHttpRequest()
request.open('POST', url, syn)
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
request.onreadystatechange = handler
var ret = gnp._trans(data)
request.send(ret.substr(0,ret.length-1))
})
return promise
},
_trans : function(data,key = ''){
var ret = ""
if(typeof data == 'object'){
for(let it in data){
ret += gnp._trans(data[it],key + (key == ''?it:"["+ it + "]"))
}
}else if(Array.isArray(data)){
for(var i = 0;i < data.length;i++){
ret += gnp._trans(data[i],key + "[" + i + "]")
}
}else if(typeof data == 'function'){
}else{
console.log(data)
ret +=encodeURIComponent( key) + '=' + encodeURIComponent(data) + "&"
}
return ret
}
}
gp更新来的太快的更多相关文章
- 牺牲速度来节省内存,Redis是觉得自己太快了吗
前言 正常情况下我们选择使用 Redis 就是为了提升查询速度,然而让人意外的是,Redis 当中却有一种比较有意思的数据结构,这种数据结构通过牺牲部分读写速度来达到节省内存的目的,这就是 zipli ...
- Spring Boot 2.7.0发布,2.5停止维护,节奏太快了吧
这几天是Spring版本日,很多Spring工件都发布了新版本, Spring Framework 6.0.0 发布了第 4 个里程碑版本,此版本包含所有针对 5.3.20 的修复补丁,以及特定于 6 ...
- (转)解决Android SDK Manager无法更新或下载太慢问题
原帖地址:http://blog.csdn.net/exlsunshine/article/details/22208857 天朝的网络...哎~真是无语...还好最近装了谷歌的chrome浏览器+红 ...
- ReactNative如何在JS中引用原生自定义控件(rn变化太快,网上很多教程有坑,这个我研究后可用,特意分享)
直接写一个Demo例子,有相关功底的肯定明白,会对特别的地方进行提醒,本文基于https://blog.csdn.net/lintcgirl/article/details/53489490,但是按此 ...
- Android sdk manager 更新 5.0 太难了,终于解决
由于众所周知的原因,必须在hosts中增加一些网址对应,才可以更新 203.208.46.146 www.google.com 203.208.46.1 plus.google.com 203.208 ...
- 面试官:Mysql 中主库跑太快,从库追不上怎么整?
写这篇文章是因为之前有一次删库操作,需要进行批量删除数据,当时没有控制好删除速度,导致产生了主从延迟,出现了一点小事故. 今天我们就来看看为什么会产生主从延迟以及主从延迟如何处理等相关问题. 坐好了, ...
- 发现一个国内牛逼的maven仓库,速度真的太快了
前天网上下了一个项目,在公司还好,网络比较流畅,很快就把依赖下好了:回家的时候,想耍耍,结果下了一天也没把依赖下好,速度是几k每秒,甚至一k每秒,哎~心都碎了,网上一搜,结果发现了一个惊天的用nexu ...
- Mysql 导入数据,推荐Source命令,太快了
http://jingyan.baidu.com/article/cbf0e500d15c762eab289362.html
- c# Random太快产生的随机数会重复
c# Random快速连续产生相同随机数的解决方案 Random类是一个产生伪随机数字的类,它的构造函数有两种,一个是直接New Random(),另外一个是New Random(Int32),前者是 ...
随机推荐
- May 20th 2017 Week 20th Saturday
The true nobility is in being superior to your previous self. 真正的高贵在于超越过去的自己. Every night before I w ...
- 为什么使用中间件下载时总是收到警告消息Object is in status Wait
在使用中间件从ERP下载对象时,正常情况下应该看到如下提示消息: 然而有时遇到的是黄色的警告消息:Object is in status Wait. 如何自己排错呢?在函数SMOF0_INIT_DNL ...
- 使用while循环+try-except定位元素
selenium学习过程中,发现自己遇到的最大的困难不是那些元素的操作,而是元素的定位,有时候明明利用firebug将xpath路径确认好了,但是在定位元素的时候还是会报错,后来在度娘上找到了一个方法 ...
- 51nod 1442 士兵的旅行
拆点,因为只能走一步,那么u->v 后就不能到k了,这样,建图就能保证只走一步: #include <bits/stdc++.h> using namespace std; *; c ...
- AIM Tech Round 5 (rated, Div. 1 + Div. 2) C. Rectangles 【矩阵交集】
题目传传传送门:http://codeforces.com/contest/1028/problem/C C. Rectangles time limit per test 2 seconds mem ...
- 【洛谷P1801】黑匣子
黑匣子 题目链接 看到题解中“维护两个堆”,突然想到了这道题的解法 维护两个堆:大根堆h1, 小根堆h2 大根堆里的是最小的i个值,小根堆里是剩下的值 每Add一个值时 插入到小根堆中, 再比较小根堆 ...
- Android 滑动效果汇总
Android 滑动效果入门篇(一)—— ViewFlipper Android 滑动效果入门篇(二)—— Gallery Android 滑动效果基础篇(三)—— Gallery仿图像集浏览 And ...
- jquery 发送短信60后重新获取
先需要form表单,获取短信的按钮做成两个相同的,一个显示,一个隐藏. <div class="item"> <p clas ...
- Java基础——线程复习总结
线程 T ...
- java8新特性学习1
java8增加了不少新特性,下面就一些常见的新特性进行学习... 1.接口中的方法 2.函数式接口 3.Lambda表达式 4.java8内置的四大核心函数式接口 5.方法引用和构造器引用 6.Str ...