のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,432,615人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレ+ JavaScript の質問用スレッド vol.119 +

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

801 = :

>>800
世の中は広いんだぞ。
ググれば最適な方法あるのに、デバッガで見つけたもん参照してるやついるんだぞ。
もう、どうすればええねんw

802 = :

質問です
var img = new Image();
img.src ='hogehoge.jp';
で作ったimgをhtmlで描写する前にココでプロパティとか使ってトリミングする方法ってあるんでしょうか?
img.dx=30で左から30pxを切り取るみたいな

803 = :

ないけど表示するときに適当な枠に入れてその中だけ表示すればいいんじゃね?

804 = :

>>800
Hoge作るたびにメソッド作成しているから
メモリ食うだろ。

まあ、大したメモリじゃないから、>>775
一番オススメ

805 = :

>>803
やっぱ表示する時しか無いですよね
スッキリしましたありがとうございます

806 = :

>>804
その方法でもプライベートメンバにアクセスしようと思ったら
インスタンスメソッドを作成しないとアクセスできませんよ

807 = :

>>794
"_"使うなって事も昔から言われてる
悪習であるには違いない
http://javascript.crockford.com/code.html

808 = :

ベストじゃなくてベターだって言ってるんだよ
小さい醜さをカバーするために別種の醜さを導入するか、
小さい醜さに妥協するか。
jQueryでも_を使ってるように、実際的な技術者はベターを選ぶ
それだけのことだ

809 = :

プライベートを導入したいのは多人数で開発する場合だけであって、
その場合はTypeScriptを使うべし
privateもサポートしている (が、protectedがなぜか無い…今後サポート予定らしいが)

810 = :

privateはそのために言語を変えるほどには重要じゃないだろ
undefinedに代入する奴がいたらどうするんだ論争のように
ほとんど起こりえないことを心配してる

811 = :

まああの論争は前提自体が間違ってるからな
undefinedに代入する奴がいたら困るからあんなことしているわけではない

812 = :

じゃあ何だよww

813 = :

ほとんど起こりえなくてもそれが与える影響が大きいなら対策は必要
JavaScriptでやらなきゃいい

814 = :

やってみりゃわかるだろ
console.log(typeof foobar === 'undefined');
console.log(foobar === undefined);
ほれコピペ用

815 = :

typeofは宣言すらされてなくてもエラーにならないのか
これは知らなかった
ありがとうございました

816 = :

でも宣言されてなかったらエラーになってくれた方がいいのでは?
宣言されていない変数を扱うことなんて普通はないんだから

817 = :

そりゃ自分で宣言したかどうかを探るためではないよ

818 = :

普通に考えて、未宣言変数と宣言済みundefinedを区別できない
typeof~の方が潜在的問題を生みやすいじゃん
はい論破

820 = :

いや、そんな判定の需要ないだろ・・・

821 = :

>>820
まぁ、メンバーの場合は普通にあるな。varで直接宣言したもんじゃないけど

function hoge(args) {
var b = typeof args.b === 'undefined' ? 'nai' : 'aru';
console.log(b);
}
hoge({a: 'a'}); → nai
hoge({a: 'a', b: 'b'}); → aru
hoge({a: 'a', b: undefined}); → nai

822 = :

googleはvoid 0で判定している
type a === 'undefined'とか古いよ

823 = :

>>821
その需要ないよね

825 = :

>>822
> googleはvoid 0で判定している
それはminify後だろ?

google closureはサイズを減らすためにundefinedをvoid 0に変換している。

http://closure-compiler.appspot.com/home

しかしながら、type(a) === 'undefined'は minifyされない。

このことからGoogleではundefinedを使っていると考えていいだろう。

殆どありえないことのために、コードを見難く歪ませることの弊害を
Googleはちゃんと知っている。

827 = :

> aが未定義だと例外が発生するよ
それは素晴らしいね。

未定義なのだから本来発生すべきエラーを
隠ぺいする方法はやるべきではない。

828 = :

理解できてないのは一人だけっぽいか

829 = :

その一人とは自分のことだったりしてなw

831 = :

未定義エラーを隠ぺいするのはよくないね

832 = :

隠蔽とかではなく、未定義であること例外を出さずに調べると考えてみて
だからもちろん定義されているのが確実な場合は使わなくてよろしい

833 = :

つまり、未定義を調べるときだけに使えってこと。

834 = :

>>827>>822か?
もはや負け惜しみにしか聞こえね
未定義も含めて undefined のチェックしてるのに、未定義エラー起こしてどうすんだよw

835 = :

>>832
未定義を調べたいときってまず無いだろ。

だからほぼ全ての場合において、
隠蔽だってことになるんだよ。

typeofでundefinedを調べるのは
もう過去のバッドノウハウといっていいかもね。

836 = :

>834
> 未定義も含めて undefined のチェックしてるのに、

なんで、未定義かどうかを調べてるの?
そんなことするのがありえないでしょ。

837 = :

>>834
えと、同時に二つことをやるろうとしたら駄目だよ。

未定義かどうかは、未定義かどうかで調べるべきだし、
undefinedかどうかは、undefinedかどうかで調べるもの。

838 = :

>>837
>未定義かどうかは、未定義かどうかで調べるべきだし、

だからそれを調べるのに typeof をつかうんだが

839 = :

>>837
じゃぁ、未定義かどうかだけをチェックする方法を書いてみな?

840 = :

>>835 >>836

普通はライブラリがやってくれているからお前らは気にしなくていい

841 = :

>>837
まぁいいや、未定義かどうかだけを調べるのは↓これ

try {
console.log(foobar);
}
catch (e) {
if (e instanceof ReferenceError) {
console.log('miteigi');
}
} → miteigi

素直に typeof 使えよw

842 = :

- ReferenceError は typeof 演算子
- プロパティ有無は in 演算子
- falsy な値は ToBoolean

というわけで arg === undefined の判定をする機会がほぼなかった

846 = :

typeof厨が発狂してるけど
未定義を調べたい時ってどんなシチュエーション?

847 = :

煽りを交えた宗教戦争なら他所でやれ

848 = :

そういう態度で教えてもらおうと思っても無理よ

849 = :

未定義が存在すること自体おかしいのでtypeofは不要
宗教でもなんでもない

850 = :

ほんとそれ
間違いを認められずに発狂してるだけだろ
アホくせー


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について