好吧,左小波出山了——ie8兼容indexOf问题
我,还是一个不懂世事的毛头小子,第一次写博。万事开头难,没事咱慢慢来。咳,练文笔吗。我觉得写东西最锻炼逻辑思维,我是一个不善于表达的人,可能是程序员的通病,但你看看人家王小波,八九十年代的作家兼职程序员,可不可怕!所以那都不是借口,同学们表达多重要啊!不会表达,你就不会撩妹。看看王小波长成那德行了,几句情诗美的我银河奶奶那么开心。我是一个看到别人优点就想学的人,因为不学习俺就头疼。
此博客,主要记录的是我的技术之坑对不对。最近的遭遇的ie8杀人事件你难道忘了吗!echarts坑了你一整天你忘了吗!
好接下来记录下自己最近的坑。
一、ie8血案
最近某某官网,落到了鄙人手里,做了一个月改了两个月之多。这里面有多少坑以后再慢慢描述吧,想想我就伤感。
当我兴冲冲把项目交付上线后,甲方说出了令人恐怖的几个字——必须兼容ie8浏览器。我那jquery各种插件的,每个模块上千行的js异步代码就慌了,这要杀人吗,大名鼎鼎IE8业内流氓谁不知道。还好有一个正义的我出现,稳定住了我那些代码子民的民心。IE8搭起来一通测试,发现问题。
ie8不支持js的indexOf方法。可是我的好多数据去重操作都用了。代码如下:
function unique(arr) {
var tmp = new Array();
for ( var i in arr) {
if (tmp.indexOf(arr[i]) == -1) {
tmp.push(arr[i]);
}
}
return tmp;
}
我寻思这简单啊,一百度好多解indexOf决兼容问题的代码鼠标一挥Copy!
if (!Array.prototype.indexOf)
{
Array.prototype.indexOf = function(elt)
{
var len = this.length >>> 0;
var from = Number(arguments[1]) || 0;
from = (from < 0)
? Math.ceil(from)
: Math.floor(from);
if (from < 0)
from += len;
for (; from < len; from++)
{
if (from in this &&
this[from] === elt)
return from;
}
return -1;
};
}
呵呵,没那么容易,你for循环咋多循环了一次,咋还把你这段代码循环到页面上了。天啊。
搞到凌晨一点多,可算解决了。
$("#xxx").each(function(idx,obj){
if(selectTheadArr.hasOwnProperty(idx)){
//解决!
}
});
hasOwnProperty()
函数用于指示一个对象自身(不包括原型链)是否具有指定名称的属性。如果有,返回true
,否则返回false
。
该方法属于Object
对象,由于所有的对象都"继承"了Object的对象实例,因此几乎所有的实例对象都可以使用该方法。
好吧,睡觉!明天来聊聊公司的echarts“新demo实例网站”。
今天我感到非常烦闷
我想念你
我想起夜幕降临的时候
和你踏着星光走去
想起了灯光照着树叶的时候
踏着婆娑的灯影走去
想起了欲语又塞的时候
和你在一起
你是我的战友
因此我想念你
当我跨过沉沦的一切
向着永恒开战的时候
你是我的军旗
王小波自己说这是一首烂诗 但有多少人都爱它。虽然我不是王小波,没有他华丽的辞藻,但我会是一个有趣的zuo。
好吧,左小波出山了——ie8兼容indexOf问题的更多相关文章
- 3.3 哈尔小波空间W0
在3.2节我们学习了关于(3.8)定义的Vj的性质.特别的,我们可以乘以系数从一个Vj空间变换到另一个.我们这节学习V0和V1的关系. 将f1(t)∈V1投影至V0 我们考虑一个属于V1的函数f1(t ...
- ECG信号读出,检测QRS,P,T 波(小波去噪,并根据检测),基于BP辨识的神经网络
这学期的课程选择神经网络.最后的作业处理ECG信号,并利用神经网络识别. 1 ECG引进和阅读ECG信号 1)ECG介绍 详细ECG背景应用就不介绍了,大家能够參考百度 谷歌.仅仅是简单说下ECG ...
- matlab 小波工具箱
wavemenu --- >wavelet ---->wavelet packet1-D Matlab小波工具箱的使用1 转载▼ http://blog.sina.com.cn/s/blo ...
- 小波学习之二(单层一维离散小波变换DWT的Mallat算法C++实现优化)--转载
小波学习之二(单层一维离散小波变换DWT的Mallat算法C++实现优化) 在上回<小波学习之一>中,已经详细介绍了Mallat算法C++实现,效果还可以,但也存在一些问题,比如,代码 ...
- CSS3 波浪简单模拟--我是波浪,我有起伏,有大波与小波(坏笑中...)
我是波浪,我有起伏,我有大波与小波(坏笑中...) 最近改版网站,一般也不会去写动画,但是有些网站还是需要的,故拿出一个较简单的动画出来分享,很简单很简单. 原理简单阐述 其实很简单,使用一张美工做好 ...
- 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(六)Picker View视图 学习笔记
想对PickerView进行操作,只能在代码中操作. 下面 ,再添加三个label组件,然后将所有组件配置到代码中(看代码),然后要实现对PickerView的操作,就要实现它的DataSource协 ...
- 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(五)Image View视图 学习笔记
留下两个问题:1.后面涉及到的异常不知道原因.2.动态图片到了程序里面就不动了. 然后: 上面是有问题的,下面是没有问题的了. 代码(另外简单写的代码,纠正了那个错误): imp ...
- 【干货】分享总结:MySQL数据一致性 罗小波 星辉天拓
[干货]分享总结:MySQL数据一致性 罗小波 星辉天拓 http://mp.weixin.qq.com/s?__biz=MjM5NzAzMTY4NQ==&mid=2653928966&a ...
- dennis gabor 从傅里叶(Fourier)变换到伽柏(Gabor)变换再到小波(Wavelet)变换(转载)
dennis gabor 题目:从傅里叶(Fourier)变换到伽柏(Gabor)变换再到小波(Wavelet)变换 本文是边学习边总结和摘抄各参考文献内容而成的,是一篇综述性入门文档,重点在于梳理傅 ...
随机推荐
- C++容器(二):关联容器简介
关联容器(associative container)与顺序容器的本质区别在于:关联容器通过键(Key)存储和读取元素,而顺序容器则通过元素在容器中的位置顺序存储和访问元素.虽然,关联容器的大部分行为 ...
- C语言:constkeyword、结构体
前几节内容的解说,主要是内存地址及指针的分析.这一节解说一下easy混淆的keywordconstant及结构体的知识. 一.constkeyword 1. 字符常量的指针 char const *p ...
- angularjs 表单校验
<!DOCTYPE HTML> <html ng-app="myApp"> <head> <meta http-equiv="C ...
- Sqlite3的安装Windows
- matplotlib 可视化 —— 定制 matplotlib
1. matplotlibrc 文件 matplotlib使用matplotlibrc [matplotlib resource configurations] 配置文件来自定义各种属性,我们称之为 ...
- 36.创建模板mylist
node.h #pragma once //创建模板 template <class T> class Node { public: T t;//数据 Node *pNext;//指针域 ...
- Django和Flask相对总结目录
Django中文文档官网:https://yiyibooks.cn/xx/Django_1.11.6/index.html Flask中文文档官网:https://dormousehole.readt ...
- java9新特性-21-java的动态编译器
1. 官方Feature 243: Java-Level JVM Compiler Interface 295: Ahead-of-Time Compilation 2. 产生背景 Oracle 一直 ...
- hdu1864/2844/2159 背包基础题
hdu1864 01背包 题目链接 题目大意:一堆数,找到一个最大的和满足这个和不超过Q要学会分析复杂度! #include <cstdio> #include <cstring&g ...
- 51Nod 不重叠的线段(贪心)
X轴上有N条线段,每条线段有1个起点S和终点E.最多能够选出多少条互不重叠的线段.(注:起点或终点重叠,不算重叠). 例如:[1 5][2 3][3 6],可以选[2 3][3 6],这2条线段互不重 ...