2015年11月21日

最近のJavascriptにはProperty Descriptorがあった…。

大変失礼しました…。

最近のJavascriptにはProperty Descriptorってのがあるんですね。

入門書も読まず、昔のJScriptを触って以来触っていなくて、最近沢山書くようになったので、その間の進化に追いついて行けていませんでした。

ちゃんちゃん。
posted by つの at 23:43| Comment(0) | 日記

Javascriptでundefinedの型変換を禁止する方法

先の話ですが、undefinedの型変換を禁止できる方法があればそれでも行ける気がしてきました。

コンパイルエラーはそもそも無理なので最悪ランタイムエラーが取れればなんとか…。

undefinedの型変換を禁止することってできますか?
posted by つの at 22:56| Comment(0) | 日記

Javascriptで安全にメンバ変数名を変更する方法をご存知ですか?

そういう方法を探しているのですが、上手く検索できませんでした。

なにかヒントをご存知でしたら教えていただけると助かります。

例えば、

var defaultOption={config0:0,config1:1};

みたいなものがあったとして、このconfig0をbConfig0に変更したかったとします。

このdefaultOptionを使用している他のjsで例えば、

var opt=extend({},defulatOption);
opt.config0=1;

みたいに使用していたとすると、このconfig0をすべてのプロジェクト、defaultOptionに依存するすべてのファイルで変更しないと期待した動作になりません。

ですが、この変更がたまに漏れることがあって困っています。

これでは将来のjsの管理が少し不安だなと…。

何かエレガントなコーディング方法を採用するということでも構いません。

CやC++だとコンパイル時にエラーになるのでリリース前にバグを防げるのですが、jsにもそういうコンパイラ的な物があったりするんでしょうか?

Objectのメンバを参照した際にundefinedだったらthrowする、という機能があれば最悪実行時にエラーを受け取ることができるので、最低でもそういう方法があれば嬉しいと思ったりしています。

jsで大きなプロジェクトを長年管理するというのは大変ですね。

そういえばいつの間にか、newとthisからclosureとextendを多用するようになっていたのですが、多分this.memberという方法だと命名規約を変更した時に間違いを後から探せない、というのが理由としてあったような気がします。

命名規約は1回の変更までなら残骸が残るのですが、数回にわたると検索できなかったりするのでなかなか困りものです。
posted by つの at 22:24| Comment(0) | 日記

手牌=純手牌+副露手牌として、天鳳の聴牌は純手牌のみで計算しています。

少し気になって考えていました。

天鳳の聴牌は、純手牌のみで計算しています。

ですので、純手牌+副露手牌で4枚使い切っていても、純手牌で4枚使い切っていなければ「待ち」として成立します。

聴牌にもルールのバリエーションがあって、実際に和了でいなければならない、副露手牌も使用枚数として計算する、などなど、色々あります。

純手牌のみで考えるというのは、一番単純化したルールということでしょうか。

荒牌時にトラブルが発生しないような工夫ともいえるかもしれません。

特に言いたいことはありませんが、

「手牌=純手牌+副露手牌」

という言葉は麻雀の本にはそういう風に呼ぶものだと定義しましょう。

※純手牌という言葉は浅見先生のサイトでお勉強しました。
posted by つの at 20:09| Comment(0) | 日記
■返信を希望する場合にはこちらからお問い合わせ下さい。

■雀荘戦ルールについて■
場千五(1本場1500点)を採用しています
東西場を採用しています(西も場風)