亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用js或jquery怎么根據不同的選擇打印出不同的結果?

用js或jquery怎么根據不同的選擇打印出不同的結果?

Smart貓小萌 2019-04-19 15:59:12
有兩道選擇題,怎么根據不同的選擇打印出不同的結果呢?每道題有十個選項a數組是第一題的選項;b數組是第二題的選項arraya{a1,a2,a3,a4,...,a9,a10};arrayb{b1,b2,b3,b4,...,b9,b10};a1b1=>"123";//選擇a1和b1的時候打印出123a1b2=>"24342";...a10*b10=>"25565457";都需要打印出不同的結果,具體應該怎么做呢?用怎么去存儲和獲取這些結果呢?
查看完整描述

2 回答

?
呼啦一陣風

TA貢獻1802條經驗 獲得超6個贊

如果有N個問題,那么構建一個N維數組,通過查表計算arr[select_1][select_2][select_3][]...[select_n]來獲得結果。
比如你的題目有2個問題,那么就構建一個二維數組,預先存儲一個表。
賦值階段可以區分一下數組是不是足夠酥松
如果酥松的話就把有值的地方賦好就行了:
vararr=Array(2);
arr[0]=Array(10);
arr[1]=Array(10);
arr[0][0]="123"
arr[3][4]="123123"
arr[5][10]="21312"
functionshowAnswerForSelects(){
returnarr[arguments[0]][arguments[1]];
}
showAnswerForSelects(3,4)
->"123123"
showAnswerForSelects(7,5)
->undefined
或者數據比較酥松,還可以構建一個switch邏輯,像這樣:
functionshowAnswerForSelects(){
varstr=arguments[0]+"-"+arguments[1];
switch(str){
case"0-1":return"123";
case"3-4":return"123123";
case"5-10":return"21312";
default:returnnull;
}
}
調用還是一樣的方式。
如果比較密,那么就用字面量的方式直接賦值吧:
vararr=[
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"],
["123123","12312","123123"..."234134"]
];
functionshowAnswerForSelects(){
returnarr[arguments[0]][arguments[1]];
}
嫌不好索引還可以用@kikong的對象字面量的方式來做。
                            
查看完整回答
反對 回復 2019-04-19
?
子衿沉夜

TA貢獻1828條經驗 獲得超3個贊

這個就看你的選擇組合的內在邏輯了,簡單的就是把所有可能性放到一個映射對象中
例如
varanswer={
"a1b1":"a1b1的結果描述~~~~",
"a1b2":"a1b2的結果描述~~~~"
};
在獲取用戶的選擇結果后,如結果userAnswer="a1b1";
varuserAnswerDesc=answer[userAnswer];
                            
查看完整回答
反對 回復 2019-04-19
  • 2 回答
  • 0 關注
  • 436 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號