- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
// всё ещё Wakaba Extension http://userscripts.org/scripts/review/23705
function optionValue(optionName)
{
var optionsString = (doOptionsPanel) ? get_cookie('wkExtOptions') : '';
if (optionsString == '')
{
switch (optionName)
{
case 'doQuickReply':
return doQuickReply;
break;
case 'doThreadExpansion':
return doThreadExpansion;
break;
case 'doPostExpansion':
return doPostExpansion;
break;
/*... еще 12 условий ... */
default:
return 0;
}
}
else
{
var optionsArray = optionsString.split(/,/);
switch (optionName)
{
case 'doQuickReply':
return parseInt(optionsArray[0]); // parseInt ensures that 0 is handled as an integer. lol, weak types
break;
case 'doThreadExpansion':
return parseInt(optionsArray[1]);
break;
case 'doPostExpansion':
return parseInt(optionsArray[2]);
break;
/*... еще 12 условий ... */
default:
return 0;
}
}
}
Естественно, я бы сделал это хэшами.
Но кому-то код, что выше понятнее...
function optionValue(optionName)
{
var optionsString = (doOptionsPanel) ? get_cookie('wkExtOptions') : '';
if(!optionsString){
return options[optionName]; // не установлена опция - возвращается undefined
}else{
return defaultOptions[optionName];
}
}
m1el 14.02.2010 17:46 # 0
guest 14.02.2010 19:07 # 0
m1el 14.02.2010 19:18 # 0
paranoid 17.02.2010 12:35 # 0
А смеются наверно те, кто только что узнал, что можно сделать лучше
guest 17.02.2010 13:14 # 0