任天堂「今後C++は捨てJavaScriptで開発していく」 (887レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
231
(1): デフォルトの名無しさん [sage] 2013/03/22(金) 16:52:40.15 AAS
>>217
217(1): デフォルトの名無しさん [sage] 2013/03/22(金) 13:59:19.86 AAS
JSに限った話じゃないけどテストを書けば問題ないってのは机上の空論だな
>>203もテスト(らしきもの)を書いているけど、結局のところなんのチェックも出来てない訳だし
(203はそろそろ自分の間違いに気がついただろうか?)
間違いに気づいたよ。指摘ありがと。
普段はnew使わないんだけど(JSONでサーバからデータを受け取ることがほとんど)、
なんとなくnewの例も書いてみたくなって背伸びしちゃった。

ほとんどの場合がViewかViewModelらしきものを使うから、>>204
204(2): デフォルトの名無しさん [sage] 2013/03/22(金) 11:38:26.18 AAS
newを使わない場合はこう。

var x = {};
(function(obj) {
  var maxLength;
  function getMaxLength() { return maxLength; }
  function setMaxLength(val) { maxLength = val; }
  obj.getMaxLength = getMaxLength;
  obj.setMaxLength = setMaxLength;
})(x);

console.log(x.maxLength);    // => undefined
x.setMaxLength(100);
console.log(x.getMaxLength()); // => 100
console.log(x.maxLength);    // => undefined
x.maxLength = 200;        // => can't change Foo's property
console.log(x.getMaxLength()); // => 100
try {
  console.log(x.getMaxlength());
} catch (e) {
  console.log(e.message);
}
みたいなコーディングしてる。
あと、try-catchはテストじゃなくて、例外が発生することの確認。

結局、JavaScriptってtypoには無力だと思うんだが、反論ある人居る?
233
(1): デフォルトの名無しさん [sage] 2013/03/22(金) 17:01:42.36 AAS
>>231
ES5以降で導入された(る)機能を活用すればインタプリンタが検出してくれたり、
エディタで補間なんかもやりやすくなるよ
>>203
203(4): デフォルトの名無しさん [sage] 2013/03/22(金) 11:37:19.10 AAS
>>200
ありがと。

>>196
それだと、maxLengthを隠蔽できてない。

newを使う場合はこう。
var Foo = function() {var maxLength;};
Foo.prototype.setMaxLength = function(val) {maxLength = val;}
Foo.prototype.getMaxLength = function() {return maxLength;};

var x = new Foo();
console.log(x.maxLength);    // => undefined
x.setMaxLength(100);
console.log(x.getMaxLength()); // => 100
console.log(x.maxLength);    // => undefined
x.maxLength = 200;        // => can't change Foo's property
console.log(x.getMaxLength()); // => 100
try {
  console.log(x.getMaxlength());
} catch (e) {
  console.log(e.message);
}
だってstrict modeならエラーがちゃんとでるし
もうちょっと勉強しましょう
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.029s