元スレJavaScript の質問用スレッド vol.132
JavaScript覧 / PC版 /みんなの評価 :
402 = :
button_element.addEventListener( 'click', function(){
var list = document.getElementsByTagName('a');
for( var key in list )
if( list[key].href === 'http://abcd.com/' )
list[key].href = 'http://efgh.com/';
}, false);
これだけで終わらんか
403 = :
setTimeoutの使い方について教えてください
(画面を止めない)sleepが欲しい
xhrの通信待ちで画面を止めたくない
上記以外でsetTimeoutを使いたい・使うべき場面はどんなのがあるでしょうか
404 = :
>>401
そうじゃない。
IDをつけた要素がグローバルになるのは
正しい仕様だって言う話をしてる
405 = :
>>402
links使ったほうが短くてすむ。これも正しい仕様だ
あとofなw
buttonElement.addEventListener('click', function() {
var list = document.links;
for (let key of list)
if (list[key].href === 'http://abcd.com/')
list[key].href = 'http://efgh.com/';
}, false);
406 = :
>>403
一定時間ごとに何か処理したい
407 = :
>>404
仕様としては正しいが、問題が複数あるので普通は使わない
・HTML Living Standardを実装していない言語では互換性が取れなくなるのでコードの可搬性が下がる(DOMはJavaScriptだけの仕様ではない)
・変数として使用できない名前がid属性値に存在した場合はグローバル変数化されない
・既存のグローバル変数と名前が衝突する為、グローバル変数を定義する度に全てのid属性値を照らし合わせなければならない。新たなid属性値を作る度に全てのJavaScriptコード上で定義されているグローバル変数名を確認しなければならない。
特に3つ目の欠点が非常に痛い
デザイナとコーダが別々ならグローバル変数名を共有しなければやっていけない
自分一人で全てを管理しているなら自分のスタイルを貫き通せるならいいかもしれないが、複数人でコードを共有するならありえない選択だな
409 = :
>>408
> 1. [1,2,3,4,5] の配列に変換
'12,34 hoge 45,56 foo 8,90'.match(/\d+,\d/g).reduce((n,s) => { return Array.prototype.push.apply(n, s.split(',')), n}, []);
410 = :
>>409
ひどいコードだな。
reduce使うことが目的になってる感があるw
411 = :
>>410
あなたならどう書きますか?
413 = :
正規表現がミスってたので /\d+,\d+/g に訂正
ぶっちゃけ、>>409のコードは俺自身も好きではない
最近は関数型コードこそが美しいという風潮があるようなのでreduceを使ったが、俺が書くときはArray.prototype系で配列を回すことはほとんどない
「スコープを短くしろ」と文句言われるのが煩わしいだけ
415 = :
window.onload = function() {
document.body.innerHTML = document.body.innerHTML.replace(/あいうえお/g,'かきくけこ');
};
こういうbody全体のテキストからタグからjavascriptとか関係なく一括で置換するコードって
クリックで動作出来るように可能?
416 = :
そう可能?
417 = :
どう可能?
419 = :
>>412
>>398の要件はどこにいった?
ぶっちゃけ、>>409が酷くて>>412が良いとする理由がさっぱり分からんのだが
421 = :
>>419
> >>398の要件はどこにいった?
↓
> 求められる文字列フォーマットが分からなければ、背景も不明なので現時点で最適解が何なのかは俺にも分からん
422 = :
>>390
俺ならこう書くな、読みやすさは大事
let tmp,
reg = /(\d+),(\d+)/g,
str = '12,34 56,78 90,10'',
max = [-Infinity, -Infinity];
while(tmp = reg.exec(str)){
if(max[0] < +tmp[1]) max[0] = +tmp[1];
if(max[1] < +tmp[2]) max[1] = +tmp[2];
}
423 = :
空行、空白も入れないレベルで読みやすさ(笑)
425 = :
>>423
おい待て、どこに空白や空行入れる部分があるんだよ?
426 = :
>>425
let tmp,
reg = /(\d+),(\d+)/g,
str = '12,34 56,78 90,10'',
max = [ -Infinity , -Infinity ];
while ( tmp = reg.exec( str ) )
{
if ( max[ 0 ] < + tmp[ 1 ] ) max[ 0 ] = + tmp[ 1 ];
if ( max[ 1 ] < + tmp[ 2 ] ) max[ 1 ] = + tmp[ 2 ];
}
427 = :
>>425
お前の流派次第だな
どこのスタイルを採用してる?
428 = :
>>426
目が疲れてる時は若干読みやすいのがむかつくw
429 = :
>>426
スクロール面倒だから無駄な空行やめろ
あと括弧前後の空白もカーソル移動に無駄な労力がいるから邪魔
画面の情報密度下げんな
430 = :
見やすさは人によるだろ…職場でちゃんとルールを決めてみんなで守るべき
一人で書くならどう書いても構わん
431 = :
>>429
もしかして←→キーだけで地道にキャレット移動しちゃう系?
432 = :
>>431
前後スペース空けていたら単語移動したとき必ずスペースの後ろに止まるわけだが、
お前はわざわざバックスペース余分に打ってスペースから削除して書き直すのか?
で、書き直したあとまた余分なスペース打つのか?
馬鹿らしくね?
433 = :
わざわざ毎回整形してるの?
最初にエディタに登録して、一段落付いたら全体選択→整形ってやらないの?
434 = :
>>426の状態だと読むのも編集するのも非効率だって話だが、あえてそんな状態に整形する>>433は間違いなく馬鹿
435 = :
>>434
>>433だけど別に>>426は推奨してないぞ。ってか>>426はネタだろう
どんだけ文盲やねんw
436 = :
>>435
普通にThree.jsで使われてるルールだけど?
http://github.com/mrdoob/three.js/blob/master/src/utils.js
437 = :
>>436
実際使ってる人いるのか、すげぇ・・・
でもそれ、例外でしょ
439 = :
あのねぇ……
これよく中級者くらいが一度はやってみることだけど
行間ってのはエディタ側で調整すりゃいいのよ
HTMLで表示する時もそう
>>436,437
それはThree.jsで使われているルールではない
あくまで行間設定のできないGitHubに出す時に、整形をかけてるだけ
勘違いするな
440 = :
> あくまで行間設定のできないGitHubに出す時に、整形をかけてるだけ
なんのためか説明してみてくれる?
441 = :
なんで「何のためかわからないので教えてください」って素直に聞けないんだろう
442 = :
何のためって、その方が読みやすいと思ったからとしか考えられないが、他に何かあるか?
確かにライブラリの関数のソースを見たいと思って見に来る人に取っては見やすいかもしれない
大前提として、細かく分割されているのと、通しては眺めないという事があるが
import文なんかは詰めて書いてあるしな
444 = :
>>421
最適解が分からんのなら他人のコードにケチつけるなよ
445 = :
リロードせずindex.htmlを再読み込みするのってどうやるの
448 = :
>>444
正論
449 = :
var a = [ 1.jpg, 2.jpg, 3.jpg,・・・10.jpg ]
というリストを
a.jpg, b.jpg, c.jpg・・・の画像に置換しても画面上に反映されず
そのまま数字画像が読み込まれるんだけど
450 = :
>>449
再現可能なコードを出せ
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.132 + (1001) - [91%] - 2018/4/19 11:00
- + JavaScript の質問用スレッド vol.113 + (1001) - [88%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.133 + (1001) - [88%] - 2018/6/8 10:45
- + JavaScript の質問用スレッド vol.113 + (1001) - [88%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.130 + (974) - [88%] - 2016/10/26 14:18
- + JavaScript の質問用スレッド vol.123 + (1002) - [88%] - 2015/4/27 23:30
- + JavaScript の質問用スレッド vol.131 + (1000) - [88%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.123 + (966) - [88%] - 2020/10/20 2:30
- + JavaScript の質問用スレッド vol.103 + (1001) - [88%] - 2012/11/9 15:30
- + JavaScript の質問用スレッド vol.130 + (1001) - [88%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.102 + (1001) - [88%] - 2012/9/11 17:30
- + JavaScript の質問用スレッド vol.131 + (1004) - [88%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.142 + (984) - [88%] - 2020/8/27 19:15
- + JavaScript の質問用スレッド vol.122 + (116) - [88%] - 2018/5/2 18:30
- + JavaScript の質問用スレッド vol.122 + (1004) - [88%] - 2015/2/14 4:45
トップメニューへ / →のくす牧場書庫について