2017-10-15 10 views
1

初めての投稿。私はすべての答えを探していますが、実際の解決策を見つけるように見えるかもしれません。私はES6で構築したショッピングカートをデバッグしています。 Chrome上で完璧に動作するようですが、SafariとFirefoxではエラーが発生しています。 SafariでSyntaxError:JSON解析エラー:予期しない識別子 "function"

エラー:Firefoxで

SyntaxError: JSON Parse error: Unexpected identifier "function" 

エラー:

SyntaxError: JSON.parse: unexpected keyword at line 1 column 1 of the JSON data[Learn More] 

マイコード:

export default class productUtil{ 
    constructor(){ 
    } 

    addToCart (sku, price){ 
     let product={price, quantity:1}; 
     if (sessionStorage.getItem(sku) == undefined){ 
      sessionStorage.setItem(sku, JSON.stringify(product)); 
     } 
     else { 
      let oldValue=JSON.parse(sessionStorage.getItem(sku, product)); 
      let newValue = oldValue.quantity + 1; 
      product.quantity = newValue; 
      sessionStorage.setItem(sku,JSON.stringify(product)); 
     } 
     this.cartBuilder(sku, product); 
    } 


    cartBuilder(sku, product){ 
     document.getElementById('listItems').innerHTML=""; 
     if (sessionStorage){ 

      for(let key in sessionStorage){ 
       let cartItem = document.createElement("div"); 
       cartItem.setAttribute("id","itemRows"); 
       product = JSON.parse(sessionStorage[key]); 
       let totalPrice = product.price*product.quantity; 

       cartItem.innerHTML=(
         '<div>'+key+'</div>'+ 
         '<input class="cart_input_size" id="'+key+'" type="number" value="'+product.quantity+'">'+ 
         '<div>'+'$'+product.price+'</div>'); 
       document.getElementById('listItems').appendChild(cartItem); 
      } 
     } 
    } 
} 

、ありがとう任意の助けに感謝!

+1

を試してみて、それはプロトタイプまたは可算財産

であるかどうかをチェックするためにObject#hasOwnProperty()を使用してください。ここに最小限のバージョンを投稿してください。 –

+0

エラーがなくても、ループの繰り返しごとに同じ変数を上書きします。 [mcve]と期待される結果を提供してください – charlietfl

+0

もしあなたがcodepen.ioのようなものに実用的な例を入れることができれば助けになります。あなたが提供したコードサンプルではあまり効果がありません。 – Geuis

答えて

-1

プロトタイプも繰り返しています。私たちはあなたの仕事をチェックアウトするのGitHubに行くことを期待しないでください

for(let key in sessionStorage){ 
    if(sessionStorage.hasOwnProperty(key)){ 
    // process storage item 
    } 
} 
関連する問題