yuzhongwusan

只在周末放松一下 ;)

Ed Spencer 已经用JavaScript编了一个胸罩尺寸计算器 :

近来我为一个更具诱惑性网站中的一个工作,这家网站是专卖女性内衣的。 除了不得不一整天去看只穿内衣的女人的图片这个不值得羡慕的任务之外,我还被迫(强迫!)去写一个胸罩尺寸计算器。

胸罩尺寸计算器背后的理论是有点神秘和神奇了。 让一个男人或野兽理解它并不容易,所以它是幸运的,我完全不属于那两类, 我通过了痛苦和折磨的考验节省了您的麻烦。

经过几个小时的测试, BraCalculator:

JAVASCRIPT:
  1.  
  2. var BraCalculator = {
  3.  
  4.   /**
  5.    * 当结果无法被计算则返回该字符。想修改你就重写个字符。
  6.    */
  7.   unknownString: "Unknown",
  8.  
  9.   cupSizes: ["A""B""C""D""DD""E""EE""F""FF""G""GG","H""HH",
  10.              "J""JJ""K""KK""L""LL""M""MM""N""NN"],
  11.  
  12.   /**
  13.    * 根据给定的下部胸围和上部胸围测量数据返回正确的胸罩尺寸
  14.    * @param {Number} underBust 下部胸围测量尺寸 (英寸)
  15.    * @param {Number} overBust 上部胸围测量尺寸  (英寸)
  16.    * @return {String} 为给定的尺寸返回正确的胸罩尺寸 (例如 32C, 40DD, 等等)
  17.    */
  18.   calculateSize: function(underBust, overBust) {
  19.     var bandSize = this.calculateBandSize(underBust);
  20.     var cupSize  = this.calculateCupSize(bandSize, overBust);
  21.    
  22.     if (bandSize && cupSize) {
  23.       return bandSize + cupSize;
  24.     } else {
  25.       return this.unknownString;
  26.     };
  27.   },
  28.  
  29.   /**
  30.    * 根据给定的下部胸围测量数据来计算正确的带子尺寸
  31.    * @param {Number} underBust 下部胸围测量尺寸
  32.    * @return {Number} 正确的带子尺寸
  33.    */
  34.   calculateBandSize: function(underBust) {
  35.     var underBust = parseInt(underBust, 10);
  36.     return underBust + (underBust % 2) + 2;
  37.   },
  38.  
  39.   /**
  40.    * 计算罩杯,需要给定带子尺寸和上部胸围测量数据
  41.    * @param {Number} bandSize 带子尺寸测量数据 (应该是一个偶数)
  42.    * @param {Number} overBust 上部胸围测量数据
  43.    * @return {String} 符合的罩杯字母
  44.    */
  45.   calculateCupSize: function(bandSize, overBust) {
  46.     var bandSize = parseInt(bandSize, 10);
  47.     var overBust = parseInt(overBust, 10);
  48.     var diff     = overBust - bandSize;
  49.    
  50.     var result   = this.cupSizes[diff];
  51.    
  52.     //如果不能找到罩杯则返回false (太大?太小?)
  53.     return result ? result : false;
  54.   }
  55. };
  56.  

分类:

技术点:

相关文章: