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

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
551 : Name_Not - 2014/12/07(日) 11:45:59.09 ID:r4jB4pSU.net (+24,+29,-3)
>>546
ありがとうございます。
>>547
おー、これはすごい!ありがとうございます。早速使ってみます。
552 : Name_Not - 2014/12/07(日) 13:55:43.53 ID:???.net (+2,-29,-12)
1からnまでの整数の範囲を全て配列に入れる方法をおしえてください
[1,2,3,4,5]
553 : Name_Not - 2014/12/07(日) 14:07:55.88 ID:???.net (-1,-29,-9)
http://lodash.com/docs#range

_.range(1, 5);
// → [1, 2, 3, 4]
554 : Name_Not - 2014/12/07(日) 14:21:23.23 ID:???.net (+49,+26,-1)
ライブラリはだめです
555 : Name_Not - 2014/12/07(日) 14:39:42.17 ID:???.net (+55,+25,-3)
後出しとか
じゃループ作って push でもしろよ
556 : Name_Not - 2014/12/07(日) 15:08:32.66 ID:???.net (+32,-30,-19)
>>552
forEach とか for loop とか while loop とか
557 : Name_Not - 2014/12/07(日) 15:26:00.63 ID:???.net (+98,+29,-10)
>>556
ループするしか方法ないんですかね
>>555
ここライブラリの質問スレじゃないですから後出しでも何でもないですよ
558 : Name_Not - 2014/12/07(日) 16:12:27.81 ID:???.net (+12,-15,-5)
ライブラリのソースコード見ればいいじゃん?
559 : Name_Not - 2014/12/07(日) 16:14:19.33 ID:???.net (+41,-20,-28)
ライブラリ禁止じゃないんだから別に問題ないよ。
ライブラリ使ってもJavaScriptはJavaScriptだ。
DOM使ってもJavaScriptなのと一緒。
560 : Name_Not - 2014/12/07(日) 19:46:45.67 ID:???.net (+71,+29,-19)
>>557
ループ禁止なんて前提はなかったはずけど
他にも後付けの条件があるなら初めから全部掲示したら?
561 : Name_Not - 2014/12/07(日) 19:52:53.78 ID:???.net (+62,+29,-11)
>>559
ここはライブラリの質問を禁止してるよね
となりのスレと間違えてるんじゃない?
562 : Name_Not - 2014/12/07(日) 20:43:11.96 ID:???.net (-2,-30,-32)
今のところFFしか動かないがES6ならこんな方法も
Array(5).fill().map((_,i)=>i+1)
563 : Name_Not - 2014/12/07(日) 20:51:31.10 ID:r4jB4pSU.net (+24,+29,-150)
凄い漠然とした質問ですいません。
また、すれ違いだったらすいません。
もしよければ変な仕様、変な技、バグ技、禁忌技を教えて下さい。

例えばexcelだと
「セルない改行はcr」「少数誤差」「シート複数選択+保存で再計算が無効になる」
「かにかに・・・を変換するとフリーズする」
など、コラム程度でいいので。
564 : Name_Not - 2014/12/07(日) 21:04:16.01 ID:???.net (+12,-29,-3)
for(;;); を実行するとページが止まる
565 : Name_Not - 2014/12/07(日) 21:30:14.42 ID:???.net (+73,+29,-26)
そんなものブラウザの実装で異なるんだから「ブラウザ イースターエッグ」とでも
検索したほうが早かろう
566 : Name_Not - 2014/12/07(日) 21:50:54.69 ID:r4jB4pSU.net (+26,+29,-5)
>>564
ありがとうございます。かわいいですね。
>>565
なるほど、こういう専門用語?があるのですね。ありがとうございました。
567 : Name_Not - 2014/12/09(火) 00:58:22.92 ID:???.net (+138,+29,-99)
ある要素をクリックすると、マウスにその要素の中心がついてきて、
もう1度クリックするとその位置に固定するというものを作ってるのですが、
ある要素が小さい場合、マウスを早めに移動するとうまくついてきてくれません。
仕方なくマウスをクリックしたタイミングでflagをつけて、
documentのonmousemove時にflagがついてれば移動みたいな実装にしたのですが、
そんなことせずともちゃんとついてきてくれるようになりませんか?
568 : Name_Not - 2014/12/09(火) 02:32:03.68 ID:???.net (+112,+29,-57)
>>567
それでいいんじゃないか?
マウスポインタが2つあるようなシステムで動かすのなら別だが
同時に動かすのは1つだけだろうから

その要素上のみでmousemoveを監視させたいのだろうが
監視させるのは要素が動ける範囲の方が適切かもしれない
569 : 567 - 2014/12/09(火) 05:40:57.80 ID:???.net (+78,+29,-45)
>>568
レスありがとうございます。

>監視させるのは要素が動ける範囲の方が適切かもしれない
こんな考え方があるとは思いませんでした。
確かにそのとおりですね。
今のままの方向で進めたいと思います。
570 : Name_Not - 2014/12/10(水) 03:29:53.86 ID:???.net (+67,+25,-1)
>>567
その方法でいい
571 : Name_Not - 2014/12/10(水) 06:15:45.15 ID:???.net (+8,-29,-82)
やってないからわからないけどsetTimeoutでディレイつけたらどうなん?
要素をmousemove→setTimeoutで100ms後にマウスの位置に移動みたいな
572 : 571 - 2014/12/10(水) 06:29:28.02 ID:???.net (+0,-28,-36)
やってみたら100msじゃだめで1000msにしたら気持ち悪い動きになったw
使い物にならなかったわスマソ
573 : Name_Not - 2014/12/10(水) 07:20:22.92 ID:???.net (-25,-30,+0)
<!DOCTYPE html><html><head>
<script>
(function(){
var button_1_click = function() {
alert("Hello World");
button_1.removeEventListener('click', button_1_click, false);
};
window.addEventListener('load', function() {
button_1.addEventListener('click', button_1_click, false);
}, false);
})();
</script>
</head><body>
<button id="button_1">HELLO</button>
</body></html>

このコードは問題ありますか?
575 : Name_Not - 2014/12/10(水) 08:53:28.63 ID:???.net (+0,-30,+0)
>>573
2 warning| Identifier 'button_1_click' is not in camel case.
2 col 5 error| Missing "use strict" statement.
4 warning| Identifier 'button_1' is not in camel case.
4 warning| Identifier 'button_1_click' is not in camel case.
4 col 9 warning| 'button_1' is not defined.
4 col 45 warning| Mixed double and single quotes.
6 col 35 warning| Mixed double and single quotes.
7 warning| Identifier 'button_1' is not in camel case.
7 warning| Identifier 'button_1_click' is not in camel case.
7 col 9 warning| 'button_1' is not defined.
7 col 42 warning| Mixed double and single quotes.
[場所リスト] :SyntasticCheck jshint (javascript) 1,1
576 : Name_Not - 2014/12/10(水) 11:04:03.24 ID:???.net (-11,-29,+0)
lintね
577 : Name_Not - 2014/12/10(水) 12:42:33.40 ID:???.net (-1,-29,-3)
camel case じゃなかったら何がいけないんだろう?
578 : Name_Not - 2014/12/10(水) 13:12:34.83 ID:???.net (+57,+29,-40)
コード全体の命名法の統一、読み易さ
lintは独自にチェックのルールが変えられるからそれは気にしなくてもいいんじゃね?
579 : Name_Not - 2014/12/10(水) 17:57:56.30 ID:???.net (+2,-30,-56)
button_1はわざわざ$('button_1')しないといかんのか
しらんかたわ
580 : Name_Not - 2014/12/10(水) 18:10:29.76 ID:???.net (+57,+29,-42)
jQueryは使ってないしそれにしても#が無いですぞ?
581 : Name_Not - 2014/12/10(水) 19:14:04.91 ID:???.net (-1,-29,-12)
>>579
なぜ prototype.js なんだろう
582 : Name_Not - 2014/12/10(水) 19:27:48.27 ID:???.net (+57,+29,-5)
$つければわかるかな?
そう思ってた時期が私にもありました
583 : Name_Not - 2014/12/10(水) 19:53:53.19 ID:???.net (+91,+29,-46)
「$は機械的に生成されるコードで使用されるべきである」という規約はなんでなくなっちゃったんだろうなあ
aとかxと同じぐらいわかりにくい
584 : Name_Not - 2014/12/10(水) 20:47:47.09 ID:???.net (+91,+29,-23)
機械的に生成されたコードを人間が読むことはないので
わざわざ区別する必要がないからでは?
585 : Name_Not - 2014/12/10(水) 21:17:58.34 ID:???.net (+104,+29,-44)
>>584
> 機械的に生成されたコードを人間が読むことはない
まさにそれ
人間が書いたコードは人間が読むのだから中身を判断しづらい $ を使う理由はないだろう
586 : Name_Not - 2014/12/10(水) 22:15:34.91 ID:???.net (+52,+29,-4)
じゃあ代わりに何を使うんだ?
587 : Name_Not - 2014/12/10(水) 22:26:15.97 ID:???.net (+57,+29,-5)
なんか慣れちゃったから別にいいかなあ

タイプ量も少ないし
588 : Name_Not - 2014/12/10(水) 22:28:19.44 ID:???.net (+73,+29,-32)
>>585
> 人間が書いたコードは人間が読むのだから中身を判断しづらい $ を使う理由はないだろう

$で中がわからないって、具体的にどんなもの?
589 : Name_Not - 2014/12/10(水) 22:34:21.70 ID:???.net (+39,-29,+0)
>>588
$, $a, $x
590 : Name_Not - 2014/12/10(水) 22:41:24.40 ID:???.net (+104,+30,-159)
>>589
それが、ただの変数名であれば覚えにくいよ。
$aとか$xに単語としては何の意味もないもの。

もしそういういう名前が、"違うものとして" 何度も出てきてくるのなら覚えられない
そもそもそれが何か決まってないのなら覚えることは不可能

だけどね。jQueryの$のように、毎回同じ意味でよく出てくるものは覚えられるんだよ。

ここ、大きな違いだからね。

覚えるかどうかっていうのは、単語に意味があるかどうかじゃないんだ。
それが多く使われるかっていうことが重要。
そして、"覚えられない物" であればちゃんとした名前をつけてあげる。

まとめると

(何度も使うから自然と)覚られるもの・・・短い略称や記号で十分
(使用頻度が低かったり意味が決まっておらず)覚えられないもの・・・ちゃんとした名前をつける

何にでも長ったらしい名前をつければいいってわけじゃないんだよ。
591 : Name_Not - 2014/12/10(水) 22:54:46.94 ID:???.net (+39,-29,-4)
$以外に変数として使える記号おしえて
592 : Name_Not - 2014/12/10(水) 22:59:59.64 ID:???.net (+147,+29,-39)
>>590
何度も出てくる名前であれば $ である必然性は全くない
a, b, c 何でもいい
反復すれば何でも記憶できるのは当たり前だ
重要なのは初見でも分かりやすい名前にする事
反復して覚えられる理屈が通るなら変数名なんて何でもいいんだよ

>>591
_
593 : Name_Not - 2014/12/10(水) 23:11:14.31 ID:???.net (+3,-30,-87)
1文字目は、Unicode文字プロパティで ID_Start か Other_ID_Start を持つもの全て
2文字目以降は、Unicode文字プロパティで ID_Continue か Other_ID_Continue か Other_ID_Start を持つもの全て
594 : Name_Not - 2014/12/11(木) 09:12:23.05 ID:???.net (+114,+29,-20)
>>592
> 何度も出てくる名前であれば $ である必然性は全くない

何度も出てくる名前・・・どれでもよい
でも、他とかぶらない名前は?・・・$

ってことで$だろ。

あんた、一つのことだけしか考えられないだろw
595 : Name_Not - 2014/12/11(木) 09:14:18.56 ID:???.net (+123,+30,-118)
>>592
> 重要なのは初見でも分かりやすい名前にする事

いいえ、何度も出てるくなら、
「初見」はほんの僅かな出来事です。

それもプロジェクト固有でも何でもなく、
jQueryを知っている人は、$のことを知っています。


初見でも分かりやすい名前にするのは
あまり使われないものに限った話で、
$には適用されません。
596 : Name_Not - 2014/12/11(木) 09:22:02.68 ID:???.net (+26,-30,-51)
var $ = function(id) { return document.getElementById(id); }
これ流行ったよな
prototypeが懐かしい
597 : Name_Not - 2014/12/11(木) 09:33:19.91 ID:???.net (+38,+29,-145)
>>594
なぜ $ が重複しないといえる?
「$ が記号だから」とかいう曖昧な理由ではなく論理的に説明できるか?
実際に $ は prototype.js と jQuery で重複してる
一文字の名前なんて劣悪

>>595
jQuery を知らない人にしか分からない名前なのが良くない
重複しなければなんでもいいなら、minified されたコードでも書けばいい

> 「初見」はほんの僅かな出来事です。
jQueryも始めは初見だった。
いずれ受け入れられる前提なら、a でも x を命名して問題ない事になる
598 : Name_Not - 2014/12/11(木) 09:44:00.22 ID:???.net (+38,-29,-27)
ECMAScript 規定: ドル記号は機械的に生成されるコード中のみの使用を意図される - Togetterまとめ
http://togetter.com/li/48425
599 : Name_Not - 2014/12/11(木) 10:20:27.73 ID:???.net (+3,-29,-95)
$ は機械的に一時変数を出力する用途だったような

一時変数だから検索性を外視して良いし、使いまわしても良い
機械的に出力するからもともとのコードが人間に読めれば良い
 ↓
jQuery の流行に負けて ES5 で $ を使えるように
 ↓
検索性が著しく落ちてコード品質低下
Crockford ぶちきれ
600 : Name_Not - 2014/12/11(木) 10:37:40.55 ID:???.net (+2,-30,-42)
jQuery('#hoge')を$('#hoge')に置き換えるタスクを作ればいいね
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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