1. 程式人生 > >javascript在IE8下不支援filter的解決方案

javascript在IE8下不支援filter的解決方案

這是程式碼:

songs = songs.filter(function (el) {
  return el.album==album;
});  

這是錯誤:

Object doesn't support this property or method

提出問題:這個屬性在chorme中100%的支援,而在IE8中出現錯誤這是怎麼回事?

回答:因為在IE9之前,Array.filter()不包含在IE中。
你可以用下面這段程式碼來實現它:

if (!Array.prototype.filter)
{
  Array.prototype.filter = function
(fun /*, thisp */) {
"use strict"; if (this === void 0 || this === null) throw new TypeError(); var t = Object(this); var len = t.length >>> 0; if (typeof fun !== "function") throw new TypeError(); var res = []; var thisp = arguments[1]; for (var
i = 0; i < len; i++) { if (i in t) { var val = t[i]; // in case fun mutates this if (fun.call(thisp, val, i, t)) res.push(val); } } return res; }; }

或者你可以選擇使用jQuery,您可以先將陣列打包成一個jQuery物件:

songs = $(songs).filter(function(){
  return this
.album==album; });

相關推薦

javascript在IE8支援filter解決方案

這是程式碼: songs = songs.filter(function (el) { return el.album==album; }); 這是錯誤: Object doesn't support this property or me

小程式Promise支援finally解決方案

小程式Promise不支援finally解決方案 程式碼片段 點選連結即可在微信開發者工具中檢視程式碼wechatide://minicode/t2eidemj7P3X git地址 基本思路 小程式的Promise是不支援polyfill方法的,這樣有一些操作就不太方便玩了,比如hideLoadin

微信瀏覽器支援下載解決方案--跳轉到預設瀏覽器開啟

在微信的內建瀏覽器(QQ內建瀏覽器也一樣)裡他遮蔽了下載連結,不管是app的下載連結,還是普通檔案的連結都遮蔽了,這個問題有兩個解決方案。首先如果你是App下載連結就傳到騰訊應用寶,但是這會給應用寶帶來流量,如果二次下載折損率很高。其二就是提示引導使用者在瀏覽器開啟所以如果你沒有將軟體上傳到應用寶裡,或者你的

create-react-app 腳手架支援less解決方案

1. 在node_modules下找到react-scripts資料夾 cd node_modules/react-scripts 2. 安裝less、less-loader依賴包 a. yarn安裝 yarn add less less-loader b. npm安裝 n

sass 支援中文解決方案

sass不支援中文  不是他不支援  是你開啟的方式不對  我用的是 Ruby    Koala  來壓縮  如果你也是用了這2款 那你沒進來錯   跟著博主的步驟來走 1、 開啟koala 的安裝目錄找到  engine.rb的那個檔案   2、在 requi

Arcgis For Android 支援中文解決方案

之前專案用的Arcgis for Android版本為10.2.1,TextSymbol還支援中文,現在升級到了10.2.4竟然不支援中文了,所有的中文都被空格替換掉了,鬱悶了半天,現在找到了一個比較

NPOI自適應寬度支援中文解決方案

    最近一個專案中涉及報表匯出為excel功能需求。我最開始使用微軟自身的excel COM元件呼叫的方式進行匯出,發現當需要匯出的內容增大到一定程度時,速度十分緩慢,而且呼叫COM元件需要在伺服

通過js添加的DOM節點的click事件綁定上的解決方案以及IOSclick事件委派失效的解決方案

之前 obj cli 並且 create 使用 引入 gpo 聲明 問題描述: 如以下代碼所示,通過js添加的Dom節點,在其上綁定點擊事件,有的時候會出現點擊事件不響應的情況,按照正常的理解,js代碼具有阻塞性,Dom節點添加成功之後,就可以找到該節點並綁定事件,沒有道理

uploadify在火狐上傳了的解決方案,java版(Spring+SpringMVC+MyBatis)詳細解決方案

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

idea ssm專案出現日誌中文亂碼,封裝的json中的msg欄位中文亂碼(但是json封裝的bean中的欄位亂碼)等其他各種專案的中文亂碼解決方案

   開頭劃重點!(敲黑板):rebuild和mvn package的迴圈往復好幾次的操作是解決這個問題的最主要的方法! 經過多次試驗,發現這樣做就可以正常顯示中文了 我說為什麼有時候亂碼,有時候中文正常,原來下面的這些地方都必須設定好,特別是 rebuild和m

解決IE8支援border-radius的問題

最近做了一個專案,是讓相容IE8瀏覽器的,遇到了IE8不支援border-radius和box-shadow的問題,在網上找了解決方案,主要是藉助於PIE.htc,具體的過程,發一個寫的比較好的文章(看連線文章之後,如果您還沒有解決問題,建議回過頭來看看我下面的注意事項,否則

解決IE支援getElementsClassName的方案

在DOM3裡已經加入了getElementsByClassName這個方法,然而IE9、10以外的其它版本均不支援,這是一塊傷痛啊! 目前可以這麼解決,判斷瀏覽器支不支援這個方法,如果支援就不管;如果不支援,就在document物件里加入getElements

Mono環境支援中文的解決方法

這是因為中文的程式碼支援包沒有安裝,啟動YaST安裝軟體,在“全部”組裡檢索mono-locale-extras關鍵字,選中mono-locale-extras後點擊Install,一路next就可以了。有依賴關係的軟體包會自動安裝。當你在mono網站下載安裝mono開發環境的時候,安裝軟體會自動在軟

Linux作業系統Wine中文顯示正常的解決方案

首先wine自己的系統中必須有中文字型,我的Ubuntu系統中已經安裝了宋體,這也是Windows Vista之前的幾個版本的系統使用的中文字型,所以: cd ~/.wine/drive_c/windows/fonts ln -s /usr/share/fonts/t

《React-Native系列》21、 解決RN在Android支援gif問題

由於RN在Android平臺上不支援gif格式的圖片,今天介紹下我們是怎麼處理這個問題的。 先來看看我們需要實現的效果,這是一張gif圖片,當我們列表上拉載入下一頁的時候需要使用這個效果,如下圖: 我們的解決方案是:將gif切成15張png的圖片,暫且命名為loadin

Linux編譯驅動程式碼時smp_lock.h檔案找到的解決方案

專案中有個驅動程式碼之前在老版本linux系統中編寫的 在移植到linux核心3.2.0後,編譯時出現一處錯誤“fatal error: linux/smp_lock.h: No such file or directory” 解決辦法是將 #include <linux/smp_lock.h&g

[Svn提交Classes資料夾的檔案][SVN交付Classes解決方案]

[svn不提交classes資料夾下的檔案][SVN不交付classes解決方案] 三個方法都可以: 1,先刪掉classes檔案,建立一個新的空白classes資料夾,選擇該資料夾點選右鍵“TortoiseSVN->新增到忽略列表”。 2、禁止Eclipse

更新SDK後ADT版本低支援,sdk找到問題解決方案

在android_sdk_windows/tools/lib下的plugin.prop檔案裡被變更為 ? 1 2 3 4 5 # begin plugin.prop plugin.version=23.0.0 # end plugi

Android studio 真機調試時生成的文件找到的解決方案

android 文件權限 真機調試 在用Android studio 開發時,用真實手機做測試,發現生成的文件會找不到。下面是我第一次碰到這個問題時,縮寫的代碼。public class MainActivity extends AppCompatActivity { @Override

關於瀏覽器切換標簽或者移動端切換應用時,js執行的解決方案

遊戲 兼容性 reload func 再次 移動 代碼 bili htm 問題:最近在做一個後臺控制的轉盤遊戲,如果手機切出當前app應用,那麽js將會中止執行,再次切入app時,將會出現不同步的狀態 解決方案:HTML5為document對象新增了visibilitySt