FizzBuzz

by yshrkn

HTML

<textarea id="output"></textarea>

CSS

textarea {
  height: 28em;
}

JavaScript

function displayFizzBuzzResult() {
  for (var i = 1; i <= 15; i++) {

    if((i % 3 === 0) && (i % 5 === 0)) {
      console.log("FizzBuzz");
      continue;
    } else if (i % 3 === 0) {
      console.log("Buzz");
      continue;
    } else if (i % 5 === 0) {
      console.log("Fizz");
      continue;
    }
    console.log(i);
  }
}

displayFizzBuzzResult();
/***********************************************************/





// FizzBuzz
// https://ja.wikipedia.org/wiki/Fizz_Buzz

// 解答サンプル
for (let i = 1; i <= 15; i++) {
  if (i % 3 == 0 && i % 5 == 0) {
    console.log("FizzBuzz")
  } else if (i % 3 == 0) {
    console.log("Fizz")
  } else if (i % 5 == 0) {
    console.log("Buzz")
  } else {
    console.log(i)
  }
}

// たいがいやっぱり4の倍数にしたい、とかBuzzじゃなくてBakaにしたいとか
// 言われるので外部化しておく
let pairFb = {
	   3: "Fizz",
	   5: "Buzz"
	},
  getFb = (num,pair) => {
      let out = ''
      for (i in pair){
        if(num % i == 0){
            out += pair[i]
        }
      }
      return out ? out : num
  }

// 1行ずつ出力ではなく配列で出力
let arr = []  
for (let i = 1; i <= 15; i++) {
  arr.push(getFb(i,pairFb))
}
console.log(arr)

// 繰り返し回数を外部化しつつHTMLへ表示
const FB_MAX = 20
let O = document.getElementById('output'),
    S = v => O.value = O.value + v + "\n"
Array.from(new Array(FB_MAX)).map((v,i)=>{S(getFb(i+1,pairFb))})