javascriptのPOSレジバージョン:v 0.1
3482 ワード
教学目標
基本的な説明をプログラムに変換します.
ループネストの使用を熟知しています.
需要の説明
お店で買い物の決済をする時はレジ(POS)システムを使います.このレジはお客様のショッピングカートの中の商品(Item)によって決済と印刷を行います.
私たちは、指定されたフォーマットのデータをパラメータとして入力し、ブラウザのコンソールから決済リストのテキストを出力することができるprint Inventtory関数という名前の関数を実装する必要があります.
( ):
[ {barcode: 'ITEM000000',name: ' ',unit: ' ',price: 3.00},
{barcode: 'ITEM000000',name: ' ',unit: ' ',price: 3.00},
{barcode: 'ITEM000000',name: ' ',unit: ' ',price: 3.00},
{ name: ' ',unit: ' ',price: 3.00,unit: ' ',price: 3.00},
{barcode: 'ITEM000000',name: ' ',unit: ' ', price: 3.00},
{barcode: 'ITEM000001',name: ' ',unit: ' ',price: 3.00},
{barcode: 'ITEM000001',name: ' ',unit: ' ',price: 3.00},
{barcode: 'ITEM000004',name: ' ',unit: ' ',price: 2.00}
「コードを保存して提出する」ボタンをクリックすると、関数print Inventtoryを呼び出して上記のデータをパラメータとして入力します.
リストの内容(サンプル):
*<<お金がなくて店を儲けます>ショッピングリスト****
名称:コカコーラ、数量:5本、単価:3.00(元)、小計:15.00(元)
名称:スプライト、数量:2本、単価:3.00(元)、小計:6.00(元)
名称:電池、数量:1個、単価:2.00(元)、小計:2.00(元)
------------
合計:23000元(元)
************************************
作業要求
Main.jsファイルでコードを作成し、テストの合格を確保する.
コードの可読性を保証する前提で、最小のコードライン数で作業を完了してください.
リストをコンソールに出力して、テストを通過させます.すべての句読点は英語の記号です.
ジョブのヒント
学習は重複した内容を統合してリストに変えます.
consolie.log出力を使用する(一回のみ使用可能)
mail.js
function printInventory(inputs) {
var item;
var item_list=[];
var list='***< > ***';
var sum=0;
for(var i=0;i<inputs.length;i++){
item=inputs[i];/
if(item_list.length===0){
item.count=1;
item_list.push(item);
}
else{for(var j=0;j<item_list.length;j++){
if(inputs[i].barcode==item_list[j].barcode){
item_list[j].count++;
}
else if(j==item_list.length-1){
POS : 1 for ;
2 ;
3 ;
item_list.push(item); item.count=0;
}
}
}
}
for(var n=0;n< item_list.length;n++){
list=list+'
'+' :'+item_list[n].name+','+' :'+item_list[n].count+item_list[n].unit+','+' :'+item_list[n].price+'.00( )'+','+' :'+item_list[n].count*item_list[n].price+'.00( )';
sum+=item_list[n].count*item_list[n].price;
}
list=list+'
'+'----------------------'+'
'+' :'+sum+'.00( )'+'
'+'**********************';
console.log(list);
}
この問題はPOSレジのバージョンと似ています.入力フォーマットには違いがあります.入力フォーマットを変えたら問題を解決しやすいです.
入力書式を同じにして、新しい配列を作成します.
POSレジv 0.1この問題は運用されました. 1 forループは配列を巡回します.
2オブジェクトのキーに対応する値.
3スプライス文字列;
4 if else文
5配列の追加用push;