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

私的良スレ書庫

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

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

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
201 : Name_Not - 2019/10/11(金) 19:50:38.55 ID:???.net (-1,-29,-25)
昔もクソもダメだった時などない。
識別子の制限と混同しているものと思われる。
var 0120abc;
とか
function 090xyz() {}
とかがダメなのであって。
202 : Name_Not - 2019/10/11(金) 20:00:46.78 ID:???.net (+60,+28,-20)
>>199
配列のインデックス値と混同するからダメ等のローカルルールじゃないか?
203 : Name_Not - 2019/10/11(金) 21:01:26.84 ID:???.net (+57,+29,-23)
後の祭りだけど、ダメだけ覚えてダメな理由を覚えないのがダメなんだけどな…
varダメ、関数式ダメ...etc
思考停止で選択肢を潰してるだけ、ってことにいい加減、気が付くべき
204 : Name_Not - 2019/10/11(金) 21:10:19.54 ID:???.net (+50,-29,-48)
>>198
え?いや、上で書いたけど--vwと--vhのCSS変数は表示領域に合わせて変更する実装みなってる
試しに >>194 で試してみて欲しい、多分ちゃんと真ん中に75%の幅・高さで表示されるはず
205 : Name_Not - 2019/10/12(土) 00:10:46.22 ID:???.net (+11,-30,-244)
>>185-186
その都度、DOM にアクセスすると「JavaScript(JS)/DOM 間の時間 × 千回分」が掛かる

それを、JS内のDocumentFragment で、千回行ってから、
最後に1回だけ、DOMにアクセスするように変える

Vue.js も同じような仕組み。
JS内に、すべてのDOMのコピー(仮想DOM)を持っていて、
変更された部分だけを、実際のDOMに反映する

これの欠点は、速いが、メモリをDOMの2倍使うこと。
常に、速度と使用メモリ量は、取替えられる!
206 : Name_Not - 2019/10/12(土) 08:31:34.12 ID:???.net (+66,+29,-6)
>>204
>>186はリフローを理解して提案しているし、>>192でその件は解決してる
207 : Name_Not - 2019/10/12(土) 17:10:07.55 ID:???.net (+29,-29,-4)
えっ ID非表示スレでNGを?
208 : Name_Not - 2019/10/12(土) 18:35:05.77 ID:???.net (+40,+22,+0)
できらぁ!
209 : Name_Not - 2019/10/12(土) 19:19:26.38 ID:???.net (+57,+29,-4)
毎回質問一個あるたび関係ないとこで言い争うの草
210 : Name_Not - 2019/10/12(土) 19:31:12.05 ID:???.net (+52,+29,-1)
ここのあいさつみたいなもんだから
211 : Name_Not - 2019/10/13(日) 03:35:46.09 ID:???.net (+81,+29,-51)
>>207 には、 >>194>>186>>192 と同じ話題に見えてて安価先を間違えてるんじゃないかって提案してあげたのにレス乞食とは……

>>194 は固定フォントサイズじゃなくてむしろレスポンシブだし、それ言ったのにinnerWidthの代替がfragmentで解決しているだの返された
それでも穏やかに人違いじゃないかって提案してあげたのにレス乞食認定って怖い
212 : Name_Not - 2019/10/13(日) 03:37:26.73 ID:???.net (+57,+29,-12)
そもそもID非表示なのに主語書かずに指示語で喋ったら意思疎通厳しいだろ
213 : Name_Not - 2019/10/13(日) 06:46:05.27 ID:???.net (-1,-29,-17)
すいません。質問です。
ifで奇数と偶数のペアならOK、それ以外はNGと出したいのですがif内の処理はどのように書けば良いのでしょうか?
214 : Name_Not - 2019/10/13(日) 09:18:40.21 ID:???.net (+57,+29,-19)
それは不明ですので、前提とそうでない場合の解答をお願いします
215 : Name_Not - 2019/10/13(日) 09:57:51.62 ID:???.net (-22,+29,-39)
じゃあ整数どころか数字ですらなくて、
「マンコ」や「ちんこ」といった文字列が来ても偶奇を判定するの?www

うーん…マンコはよく見たらグロいから奇数かなぁ?
ちんこは偶数!タマタマだけに!wwww
216 : Name_Not - 2019/10/13(日) 10:16:28.86 ID:???.net (+57,+29,-16)
偶数も奇数もどっちも整数なんだからそれ以外は全部NGでいいだろ。
両方整数でかつ足し合わせた値が奇数ならOKとか。
217 : Name_Not - 2019/10/13(日) 13:09:03.39 ID:???.net (+14,-21,-1)
218です
>>222 さんヒントありがとうございます
できました
218 : Name_Not - 2019/10/13(日) 18:28:49.52 ID:???.net (-1,-30,-10)
俺も何がしたいのかさっぱりわからんが
`\`\${a}\``
か?個人的には大してスッキリしたようには見えないが…
挙げ足とりとか失礼なこと言ってないで>>229の通りやったほうがいい
219 : Name_Not - 2019/10/13(日) 18:41:53.55 ID:???.net (+57,+29,-9)
もっとすごいスッキリ書く方法知ってるけど質問者の態度が気に入らないので教えませんwwwww
220 : Name_Not - 2019/10/13(日) 20:05:21.06 ID:???.net (+12,-30,-97)
>>235
うーん、要望にマッチするか微妙だが一案として、
const escBQ = ({raw}, ...vals) => String.raw({raw: raw.map(s => s.replace(/BQ/g, '`'))}, ...vals)
みたいなテンプレート関数を作って、

escBQ`あああBQこんにちは
BQHello
よい朝BQ
BQ`

ってやれば文字列として
あああ`こんにちは
`Hello
よい朝`
`
が得られるよ。
221 : 227 - 2019/10/13(日) 20:13:53.69 ID:???.net (+11,-30,-66)
>>239
なるほど、フィルターしたほうが断然みやすそうですね
見た目だけの問題なのでBQのところを絶対に使わなさそうな(❝⚠❛みたいな)絵文字とか機種依存にしようかなと思いました
(副作用ありそうですが)
ありがとうございました
222 : Name_Not - 2019/10/14(月) 01:16:48.50 ID:???.net (+71,+29,-11)
>>238
>>230も質問者で、回答を釣るのに失敗したから、別人の体で出てきただけだと思う
223 : Name_Not - 2019/10/14(Mon) 06:24:39 ID:HrB2uo0v.net (-15,+29,-180)
http://mohayonao.hatenadiary.org/entry/20111108/1320756534

ここでやっているようなプログラムを作っても別タブを開いている間は止まります。
同じような経験をしていらっしゃる方いませんか?

workerの部分を別ファイルを使っても、blobを使って単一ファイルにまとめても
同じようになります。

http://qiita.com/mohayonao/items/b4f713bf8ab9de8907f1
ちなみにここのやつをそのままコピーしてやっても、workerありでも
無しでも同じような結果になりました。
ブラウザはChrome、Operaと試しました。
上記のカウンターを数えるだけのプログラムですが
別タブに行くとworkerがあろうとなかろうと、タイマーが止まってしまいます。
何かいい方法ないでしょうか。
ちなみに誰か、これらのプログラムを試してみて成功した方いらっしゃいませんか?
というより、プログラムは動くので、別タブに行ってもタイマーが止まるかどうか気になります。
緊急退避用でお世話になった方ありがとうございます。
個人的にやった修正はBlobbuilder() を Blobに変更しただけ。
条件文とかはそのままにしています。
224 : Name_Not - 2019/10/14(Mon) 06:42:27 ID:HrB2uo0v.net (-20,+29,-6)
そのままでは使えそうにないですね。
とりあえずソースをストリングにするところから始めます。
226 : Name_Not - 2019/10/14(月) 08:40:48.05 ID:iyZ+xD4b.net (+24,+29,-22)
>>235

このスレには、
>>230
みたいな荒らしがいるから、要注意!

質問に関係ないことで、言い争いをしている奴も、荒らし
227 : Name_Not - 2019/10/14(月) 13:57:41.95 ID:???.net (+13,-30,-117)
class Parent {
constructor(){
this.a=10;
this.b=20;
}
sum(){ return this.a+this.b; }
}
class Child extends Parent{
constructor(){
super();
this.a=2;
this.b=3;
}
}

var hoge=new Child();
console.log(hoge.sum());

super()ってなんで必要なんですか・・?
extendsする=ふつうはparentのメソッド使うからsuperする必要あります・?
228 : Name_Not - 2019/10/14(月) 14:01:27.22 ID:???.net (+21,-6,-11)
ふつうって?Java?
Javaでは要らないの?
229 : Name_Not - 2019/10/14(月) 20:26:17.13 ID:???.net (+15,-30,+0)
>>257
ありがとうございます!凄くよく分かります

(コンストラクタ).prototype.(プロパティ)に代入したときは、既に存在するプロトタイプオブジェクトのプロパティを変更するだけだから(インスタンス).constructorが(コンストラクタのプロトタイプオブジェクト).constructorなんですね

逆に(コンストラクタ).prototypeに直接代入したときは、プロトタイプオブジェクトとして(オブジェクト).constructorを持たず結果的にObject.prototype.constructorがプロパティconstructorとして参照されるんですね
231 : Name_Not - 2019/10/14(月) 22:28:16.59 ID:???.net (+25,-11,+0)
>>261
それJavaScriptやない、Javaや
232 : Name_Not - 2019/10/14(月) 22:32:45.09 ID:???.net (+70,+29,-5)
>>260
隠れてる間にビューを書き換える必要性は無いでしょ
233 : Name_Not - 2019/10/15(火) 09:17:24.27 ID:narBTsOx.net (+31,+23,-52)
>>266
別タブじゃなくて、別ウインドウだときちんと動作するのですが
それは、別のGUIアプリの扱いをしているからだと考えていいのでしょうか。
234 : Name_Not - 2019/10/15(火) 09:32:06.73 ID:???.net (+57,+29,-8)
もうそろそろブラウザ依存の話はやめてくれないか?
それはJavaScriptの話じゃない。
235 : Name_Not - 2019/10/15(火) 09:39:47.45 ID:???.net (+29,+29,-86)
>>267
何訳のわからないこと言ってんの
別タブだと描画する必要がないし、入力を受け付けることもないから、それらに関するイベントループがサスペンドされてるかイベントバブリングが抑制されてるんでしょ
別ウィンドウだと描画する必要が基本的にはあるという違いがあるでしょ
236 : Name_Not - 2019/10/15(Tue) 10:43:26 ID:narBTsOx.net (+36,+27,+1)
>>269
よくわかりました。ありがとうございました。
237 : Name_Not - 2019/10/15(火) 16:35:02.28 ID:???.net (+62,+29,-79)
classの継承って例えば
動物(親):ゾウ(子)、ライオン(子)、犬(子)
はしっくりくるんだけど
動物園(親):ゾウ、ライオン、犬
っておかしくない?
例えば、ゾウ.speak()→その動物の鳴き声
はわかるけど
ゾウ.count()→動物園にいるその動物の個体数
ってなんか違和感あるんだけど一体どうすれば
238 : Name_Not - 2019/10/15(火) 17:19:25.37 ID:???.net (+116,+30,-115)
>>271
まずな「例え」というのは何かっていうのが
わかってないやつが多い。

例えっていうのは、あることを知らない人に対して、
知ってるであろう他の概念を使って理解を容易にすることなんだよ。

例えは例えであって、本物じゃないんだから
本物との違いがあるのは当たり前

どうするかだって?どうもしなくていいよ。
例えで継承を理解したなら、ソフトウェア開発で必要なときに使えばいい

どうせそんな動物園、作るわけじゃないんだろ?
239 : Name_Not - 2019/10/15(火) 17:22:33.82 ID:???.net (+84,+29,-24)
>>271
ゾウは動物だけど、
ゾウは動物園じゃないだろ

おかしいなら、継承を使うのが間違いってことだ
240 : Name_Not - 2019/10/16(水) 07:16:19.71 ID:???.net (+0,-27,-43)
自分でfillMapとかのメソッドを作ったら良いだけでは?
241 : Name_Not - 2019/10/16(水) 07:18:55.02 ID:???.net (+70,+29,-12)
>>277
その例で言っても車クラスからハンドルインスタンスができるのは不自然
242 : Name_Not - 2019/10/16(水) 07:21:00.65 ID:???.net (+72,+29,-15)
>>272
参照してた元コード貼っちゃうといろいろと面倒なのでその部分だけ例えた感じっす
>>273
なるほど単にそういうことですよね
>>277
なるほどさらに、しっくりきました
243 : Name_Not - 2019/10/16(水) 07:54:28.08 ID:???.net (+70,+29,-39)
横からですが
>>280
車クラスから作られた車インスタンスが
車部品クラスから生成されたハンドルインスタンスを
包含するということでは?
244 : Name_Not - 2019/10/16(水) 08:18:06.21 ID:???.net (+3,-30,-242)
動物クラスに”死(HP0状態)”メソッドやプロパティをつけた場合も
動物園クラスやその上の包含クラスからみれば、死してなお包含ということかな

あるゾウXが動物園Aから動物園Bに移転する場合は
動物園クラスを包含する展示施設クラス的なのをつくって
(A)展示施設("動物園Bの名前やIDやオブジェクト").登録("ゾウXの名前やIDやオブジェクト");
内部は、
(1)return 動物園Bオブジェクト;
(2)動物園B.登録(ゾウX);
(3)return ゾウXオブジェクト
(4)ゾウX.所属変更(動物園B);
(5)this.所属=動物園B;
(0)(A)でそもそも動物園B、ゾウ共にオブジェクトが引数なら一発変更
みたいな感じだろうか・・こんがらがってきた
245 : Name_Not - 2019/10/16(水) 10:13:07.99 ID:???.net (+3,-30,+0)
>>278
好きなの選びなはれ。
let abc = [...Array(10)].map(() => hoge());
let abc = Array.from(Array(10), () => hoge());
let abc = Array.from({length:10}, () => hoge());
let abc = Array.apply(null, {length: 10}).map(() => hoge());
let abc = [...Array(10)].reduce(acc => [...acc, hoge()], []);
let abc = [...Array(10)].reduce(acc => acc.concat(hoge()), []);
let abc = [...function*(){for(let n=0;n++<10;)yield hoge()}()];
let abc = [...function*(){let n=0;while(n++<10)yield hoge()}()];
let abc = Array.from(Array(10)).reduce(acc => [...acc, hoge()], []);
let abc = Array.from({length:10}).reduce(acc => [...acc, hoge()], []);
let abc = [...{*[Symbol.iterator](){for(let n=0;n++<10;)yield hoge()}}];
let abc = [...{*[Symbol.iterator](){let n=0;while(n++<10)yield hoge()}}];
let abc = Array.apply(null, {length: 10}).reduce(acc => [...acc, hoge()], []);
let abc = Array.apply(null, {length: 10}).reduce(acc => acc.concat(hoge()), []);
246 : Name_Not - 2019/10/16(水) 10:32:04.56 ID:???.net (+4,-30,-145)
>>284
よく考えたら今回のhoge、引数取らないみたいだから上の4つ以下のように関数ラップはずせるわ。Yo!Yo!
let abc = [...Array(10)].map(hoge);
let abc = Array.from(Array(10), hoge);
let abc = Array.from({length:10}, hoge);
let abc = Array.apply(null, {length: 10}).map(hoge);
247 : Name_Not - 2019/10/16(水) 19:07:36.76 ID:???.net (+50,+27,+0)
ありがとうでしょ!
248 : Name_Not - 2019/10/16(水) 19:28:20.98 ID:???.net (+52,+29,-29)
怒濤の選択肢ワロタwww
249 : Name_Not - 2019/10/16(水) 19:40:15.96 ID:???.net (-2,-30,-42)
hoge(v)の間違えじゃ?初期値0はhoge()内で設定
[...Array(10)].map(hoge)一択だな
250 : Name_Not - 2019/10/16(水) 20:37:30.89 ID:???.net (-2,-30,-45)
拡張性、汎用性、パフォーマンス、共に
let abc = [...function*(){for(let n=0;n<10;n++)yield hoge()}()];
が最強。他はカスである。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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