好吧,左小波出山了——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)变换 本文是边学习边总结和摘抄各参考文献内容而成的,是一篇综述性入门文档,重点在于梳理傅 ...
随机推荐
- Java基础学习总结(2)——接口
一.接口的概念 JAVA是只支持单继承的,但现实之中存在多重继承这种现象,如"金丝猴是一种动物",金丝猴从动物这个类继承,同时"金丝猴是一种值钱的东西",金丝猴 ...
- Java多线程-基础知识
一. 进程是执行中的程序,程序是静态的(我们写完以后不运行就一直放在那里),进程是执行中的程序,是动态概念的.一个进程可以有多个线程. 二. 多线程包含两个或两个以上并发运行的部分,把程序中每个这样并 ...
- root用户删除文件提示:Operation not permitted
root用户删除文件提示:Operation not permitted http://blog.csdn.net/evanbai/article/details/6187578
- storm trident function函数
package cn.crxy.trident; import java.util.List; import backtype.storm.Config; import backtype.storm. ...
- Android触碰事件
OnTouchListener使用 public class ViewActivity extends Activity implements View.OnTouchListener { @Over ...
- [转]GLTF-3D图形界的JPEG
GLTF简介 1.glTF(GL TransmissionFormat),即图形语言交换格式,它是一种3D内容的格式标准,由Khronos Group管理(Khronos Group还管理着OpenG ...
- linux中的raid
参考文档 http://www.cnblogs.com/ivictor/p/6099807.html 制作raid5 http://blog.51cto.com/11134648/2103384 RA ...
- Reading and writing
A text file is a sequence of characters stored on a permanent medium like a hard drive, flash memory ...
- Ajax的几种形式 和使用情况
Ajax的几种形式: 1 $.get( "Login.ashx", {Name:name,Pwd:pwd,action:x}, function(data){这里用da ...
- MVC中几种常用的ActionResult
一.定义 MVC中ActionResult是Action的返回结果.ActionResult 有多个派生类,每个子类功能均不同,并不是所有的子类都需要返回视图View,有些直接返回流,有些返回字符串等 ...