始めに金額を入力してもらい、その金額を半分にしてAとB2つの商品を購入し、それぞれの購入代金と、残額がでるというスクリプトを組みたいのですが、
A * (1)Aの割引率% - (2)Aのサービス価格 = (3)計算結果、
B * (1)Bの割引率% - (2)Bのサービス価格 = (3)計算結果、
最後に残額が出る。というスクリプトです。

始めに入力された金額の範囲が
1,000円~3,000円なら、Aの(1)が5%、(2)が100円で、Bの(1)が3%、(2)が50円。
3,000円~5,000円なら、Aの(1)が7%、(2)が300円で、Bの(1)が4%、(2)が150円。
といった具合で、始めの金額によって(1)、(2)は5段階ぐらいに増えていきます。
(3)の計算結果だけでなく、(1)(2)(3)すべてが出るようにするには、どのように組めば良いのでしょうか?

初心者には難しいです。どうか宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

ちょっと初心者の方には難しいかもしれませんが、わたしはよく下のような方法を使います。



<HTML>
<BODY>
<script language=javascript>
function calc( money ) {
 if ( money < 1000 ) {
  this.a = 5;  // 割引率
  this.b = 100; // サービス価格
 } else if ( money < 2000 ) {
  this.a = 10; // 割引率
  this.b = 150; // サービス価格
 } else {
  this.a = 15; // 割引率
  this.b = 200; // サービス価格
 }
 this.c = money - money * ( this.a / 100 ) - this.b;
}
var cc = new calc( 1000 );
alert( cc.c );
</script>
</BODY>
</HTML>

calcというのはfunctionと宣言してありますが、実はオブジェクトという一種の箱のようなものになっています。
this.a this.b this.c という部分で、この箱の中身として、割引率・サービス価格・計算額というものが入っているよと定義してあげています。
これは、this.waribiki this.service this.goukeiとかでも構いません。

次に、var cc = new calc( 1000 );という部分で、上で定義した箱をひとつ宣言しています。
ここの1000という部分が入力された金額になります。
こうすると、箱の中身を見ることが可能になります。しかも、箱の中身が既に設定された状態になっているのです。
箱の中身を見るには、cc.a ← 割引率 cc.b ← サービス価格 cc.c ← 計算額とします。
var aa = new calc( 2000 );とすれば2000円に対するそれぞれの金額が設定されるわけです。
お分かりになりましたでしょうか?
もし難しいようでしたら、下記までお越しください。
なるべく易しくお答えしようと思います。

参考URL:http://www15.tok2.com/home/jbh/
    • good
    • 0
この回答へのお礼

お礼が遅くなり大変申し訳ありませんでした。
説明も分かり易くしていただいて助かりました。

お礼日時:2001/10/13 14:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング