前幾天我問了這個問題: Jquery grep or map object array with multiple search criterias 我很快得到了兩個非常有希望的答案。可惜的是,他們倆給我下面的錯誤中的console.log:JQuery:爲什麼在這個腳本中「.filter不是函數」?
products.filter是不是一個函數
這是我收到的有前途的腳本之一: 我粘貼了腳本到我的編輯不變,它不會運行。 即使代碼片段在我已鏈接的帖子中運行。
const productIds = '07.1438, 01,1340, 05,04531, 02.0135';
const products = [{AdminID: 137, ProduktID: "07.1438", itemName: "Repaplast", itemColor: "0000, 5030", MalKode: "1-3",},{AdminID: 6, ProduktID: "07.1436", itemName: "Repaplast grå", itemColor: "0070", MalKode: "1-3",},{AdminID: 146, ProduktID: "90.0905", itemName: "Mixer Gun", itemColor: null, MalKode: "",},{AdminID: 89, ProduktID: "02.0135", itemName: "Repaplast Primer NEW FORMULA", itemColor: "", MalKode: "5-3",}];
var result = products.filter(o => productIds.split(',').find(productId => o.ProduktID === productId.trim()));
console.log(result);
我已經literately蒐羅網的解決方案,但我找不到任何遠程接近答案。所以我再次轉向了Stackoverflow的傑出人士。任何使用純英文的人都可以向我解釋這張圖片有什麼不對?
編輯:這個瀏覽器是否依賴? 我將Dreamweaver CS6作爲我的首選編輯器運行。我已經在Chrome和Opera中測試了腳本。如果這是依賴於瀏覽器,我可能不得不尋找另一種解決方案,因爲這是在我的公司網站上,我無法控制用戶首選的瀏覽器。
我真的需要解決這個問題,我在這件事上花了一個星期,它讓我發瘋。先謝謝你。
您需要在支持ES6的瀏覽器(如Firefox或Chrome)中運行代碼,因爲它使用ES6的箭頭語法進行函數聲明。看起來你可能正在使用Internet Explorer(與上述兩個相比,它完全和完全吸引人)。 – connexo
正如您在堆棧片段中看到的那樣正常工作。也許你錯過了一些polyfills? –
我在Chrome和Opera上運行它。我的優先編輯是DreamWeaver cs6。你是說這個腳本是依賴於瀏覽器嗎?然後我有一個重大問題。這個腳本正在我的主頁上,我無法控制我的用戶喜歡哪個瀏覽器.....嘆氣 – XanderMan