2017-10-07 4 views
0

私は数日前にこの質問をしました: Jquery grep or map object array with multiple search criterias そして私はすぐに2つの非常に有望な答えを得ました。残念ながら、どちらも私には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でテストしました。これがブラウザに依存している場合は、私の会社のウェブサイトで行われているので、別の解決策を探す必要があります。ユーザーの好みのブラウザを制御することはできません。

私は本当にこれを解決する必要があります。私はこのことに一週間を費やし、それは私を怒らせます。前もって感謝します。

+0

関数宣言にES6の矢印構文を使用するため、FirefoxやChromeのようなES6対応ブラウザでコードを実行する必要があります。インターネットエクスプローラを使用しているように見えます(これは、上記2つに比べれば完全に完全です)。 – connexo

+0

スタックスニペットのようにうまく動作します。たぶん、あなたはいくつかのポリフィルを紛失していますか? –

+0

私はChromeとOperaの両方で実行しています。私の好みのエディタはDreamWeaver cs6です。このスクリプトはブラウザに依存していると言っていますか?それから私には大きな問題があります。このスクリプトは私のホームページに掲載されており、私のユーザーが好むブラウザーを制御することはできません.....一口 – XanderMan

答えて

0

まず、貴重な助けとヒントをいただき、ありがとうございます。 「ES6対応ブラウザ」というコメントは、Dreamweaverが問題の一部であったと私に思いました。エディタは単純にそこにないエラーを投げるようです。

さらに: JSON.object(または正しい用語が何であれ)をデータソースとして使用し、フィルタのソースとして使用しているので、スクリプトでいくつか修正する必要があります。

私はついにスクリプトを動作させました。もう一度。、ありがとう。

関連する問題