お題だぜ!野郎どもぉ!!

以下のコードについて

設問1)
class declarationを使って書き直しなさい。
そのとき、必ずnew.target meta propertyを利用すること。

設問2)
class declarationを使って書き直しなさい。
そのとき、必ずcallable constructorを利用すること(なお、stage 1とする)。

設問3)
class declarationとnew.target meta propertyを利用せずに書き直しなさい。


function Byte(bit){
 const num = Number(bit);
 const bitToByte = num / 8;
 if(new.target == undefined){
  return bitToByte;
 }
 this.rawBit = num;
 this.bitToByte = bitToByte;
}

Object.defineProperty(Byte, Symbol.species, {
 get(){
  return Byte;
 }
});

Byte.prototype [Symbol.toStringTag] = "Byte";

Byte.prototype [Symbol.toPrimitive] = function(hint){
 switch(hint){
 case "default":
 case "number":
  return this.valueOf();
 case "string":
  return this.toString();
 }
 throw new TypeError;
}

Byte.prototype.valueOf = function(){
 if (this instanceof Byte == false) throw new TypeError
 return this.rawBit;
}

Byte.prototype.toString = function() {
 return String(this.valueOf());
}

function KiroByte(bit){
 const num = Number(bit);
 const bitToKiro = num / (1024 *8);
 if(new.target == undefined){
  return bitToKiro;
 }
 this.rawBit = num;
 this.bitToKiro = bitToKiro;
}

KiroByte.fromByte = function(byte){
 if (byte instanceof Byte == false) throw new TypeError
 return new KiroByte(byte.bitToByte *8);
}

Object.defineProperty(KiroByte, Symbol.species, {
 get(){
  return KiroByte;
 }
});

KiroByte.prototype [Symbol.toStringTag] = "KiroByte";

KiroByte.prototype [Symbol.toPrimitive] = function(hint){
 switch(hint){
 case "default":
 case "number":
  return this.valueOf();
 case "string":
  return this.toString();
 }
 throw new TypeError;
}

KiroByte.prototype.valueOf = function(){
 if (this instanceof KiroByte == false) throw new TypeError
 return this.rawBit;
}

KiroByte.prototype.toString = function(){
 return String(this.valueOf());
}

KiroByte.prototype.toByte = function() {
 if (this instanceof KiroByte == false) throw new TypeError
 return new Byte(this.rawBit);
};

win 10 th2のアップデートでgoogle imeでハマったメモ

th2では7->10のようなメジャーアップデートのようにimeを変更する時は再インストールが必要なのですが、google imeを再インストール時にgoogle imeを既定に選択しておかないと言語リストに二度と出てきません。
そのためコントロールパネルの「言語」の言語リストにすら出てこず選択することが出来ません。こうなったらもう一度google imeを再インストールし、その際既定に設定する必要があります。
(th1もそうだったっけ?)

キーボードがヘタれてきた

メカニカルで鉄板入りで黒かLinear Greyのフルキーをどこか出さないか?配列とキー数はどうでもいいんだ!

あとt付きのm570がボロい。まだ一歳二ヶ月なのにチャタってきた。
mosaicの話してる。
2.7だけどここにソースがあるっていう。

ちびうさは900歳って原作だけだっけ?

ネオ・クイーン・セレニティは永遠の22歳だろ!ていうかセーラーコスモスがちびちびなんだから逆に若返るんじゃないの?

はまあ置いといて、元アトムはマンガの神様がお怒りになるぞ。またアトムのアニメを作りたいんだなっ!