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

私的良スレ書庫

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

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

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
51 : Name_Not - 2018/08/05(日) 09:16:44.60 ID:???.net (-6,-29,-12)
intじゃなくてlongか
52 : Name_Not - 2018/08/05(日) 13:50:43.01 ID:7tec/NU4.net (-4,+0,-46)
別に入ればなんでもいいんだけどいつもvarで型を作って自動でやってるから
Javascriptの基本的な型の作り方はvarなのかなって
53 : Name_Not - 2018/08/05(日) 15:12:47.47 ID:???.net (+57,+29,-11)
朝鮮人みたいに揚げ足とる根性悪い奴がいるな

普段何の仕事してんの?
ニート?
54 : Name_Not - 2018/08/05(日) 17:52:25.11 ID:???.net (+57,+29,-17)
根性悪いやつが居るように見えるのは本人が根性悪いんだろうな
55 : Name_Not - 2018/08/05(日) 19:57:27.12 ID:???.net (+57,+29,-1)
朝◯人と悪口いってる時点で人の屑
ジャップのくせに
56 : Name_Not - 2018/08/05(日) 21:24:09.84 ID:???.net (+55,+29,-72)
「朝鮮人」は今や悪口ではないし
「JAP」は昔は米国新聞でも普通に使われてたただの略語というか日本の愛称だった
たかが三文字の言葉であれこれ思うのも馬鹿らしいよ
57 : Name_Not - 2018/08/05(日) 21:52:18.03 ID:???.net (+39,+21,+0)
ヴァーカ
58 : Name_Not - 2018/08/05(日) 21:53:51.71 ID:???.net (+89,+29,-41)
リアルで朝◯人なんて言ってみろよ
どう言うことになるか分かるか?

リアルで言えない差別用語をネットで
使って吠えてる糞野郎
59 : Name_Not - 2018/08/05(日) 22:08:34.76 ID:???.net (+52,+29,-2)
某氏のカメラの話思い出した
60 : Name_Not - 2018/08/05(日) 22:41:19.46 ID:???.net (+97,+29,-40)
>>58
意味分からん
中国人
フィリピン人
朝鮮人
普通に使うぞ

変な嫌悪感を持ってるのはそういう学校教育された中年世代だけだろ
61 : Name_Not - 2018/08/05(日) 22:53:54.39 ID:???.net (+61,+30,-102)
【研究】飲むだけで差別主義者が更生する「道徳ピル」
>米国では、多くの学生が成績向上や適性試験をパスするために、リタリンを治療以外の目的で服用しているとの報告がある。

差別主義者は薬物でも服用させなければ駄目だな
市ぬかもしれないが生きてても仕方ない奴らだからどうでもいいわ
62 : Name_Not - 2018/08/05(日) 22:59:43.18 ID:???.net (+59,+27,+0)
>>60
韓国人 は入らないんか
63 : Name_Not - 2018/08/06(月) 04:25:48.82 ID:Oi2BNCSY.net (+25,+30,-66)
知能が低いと複雑なことを考えられないから
極端な白黒思考になる
これが差別主義者

道徳ピル飲んで知能を上げるしかない
薬害で市んだら害虫が一匹消えたという事でそれはそれでおっけ
64 : Name_Not - 2018/08/06(月) 04:47:05.97 ID:???.net (+57,+29,+0)
>>50
言葉で説明してくれ
65 : Name_Not - 2018/08/06(月) 05:17:55.83 ID:???.net (+57,+29,-47)
DOMは仕様がコロコロ変わる
だからその違いを吸収するライブラリが必要になる
66 : Name_Not - 2018/08/06(月) 19:19:22.58 ID:???.net (+64,+29,-86)
逆だな
原則DOM標準は後方互換性を守る
JSのライブラリはバージョンアップで簡単に切り捨てる
ライブラリを使ってるとむしろ追従が大変になる
67 : Name_Not - 2018/08/06(月) 19:33:22.94 ID:???.net (+64,+29,-45)
自分の引き出しにあんまり実例なくてわからないんだけど
バージョンアップで切り捨てるって旧UAを?だったら旧バージョン使い続ければ良いのでは?
68 : Name_Not - 2018/08/06(月) 19:48:56.48 ID:???.net (+57,+29,-17)
uaって?無駄にコンテキストから推測させないでほしい。
あなたは数文字節約できるかもしれないけどこっちはいい迷惑。
69 : Name_Not - 2018/08/06(月) 19:58:56.09 ID:???.net (+45,-29,-55)
>>67
パフォーマンスや新機能のためにバージョンアップしたくても
再設計が必要なほどAPIが大きく変わってることが珍しくないということ
YouTubeのCr以外で遅い問題もPolymerがそうだからYouTubeが追従できないから
70 : Name_Not - 2018/08/06(月) 20:11:07.76 ID:???.net (+57,+29,-20)
crって?無駄にコンテキストから推測させないでほしい。
あなたは数文字節約できるかもしれないけどこっちはいい迷惑。
71 : Name_Not - 2018/08/06(月) 20:42:03.15 ID:???.net (+11,-29,-93)
>>66
> JSのライブラリはバージョンアップで簡単に切り捨てる
> ライブラリを使ってるとむしろ追従が大変になる

どのライブラリ? AngularとかReactとかかな?
なんか更新頻度高いしね

その点jQueryは安定していていいよ。
そもそも追従するほどバージョン出てないしw
72 : Name_Not - 2018/08/07(火) 02:19:33.00 ID:???.net (+98,+29,-51)
>>69
それ、単にそのライブラリ・フレームワークの設計が杜撰ってことじゃ
その互換性の部分以外のとこも大丈夫なのか?となりそう
73 : Name_Not - 2018/08/07(火) 02:38:12.35 ID:???.net (+50,+22,-22)
angularって言うほどいいかな?
偉そうな事言うのは嫌なんだけど
vueやreactの方が絶対いい
74 : Name_Not - 2018/08/07(火) 06:19:10.80 ID:???.net (+107,+29,-48)
>>72
杜撰ってわけでなくJS界のトレンドなんだろうな
jQueryみたいに切り捨てられないと(それでも利用度からすれば比較的切り捨ててる方)
負の遺産化するし
75 : Name_Not - 2018/08/07(火) 08:48:53.31 ID:???.net (+77,+29,-121)
>>74
jQueryは負の遺産にはならんよ。
DOM操作を短く簡潔にするためだけのものだから
使わないならjQuery1行をそのまま数行に対応付けて書き直せる
冗長になりますよってだけで誰もやらないけどね

負の遺産っていうのはAngularやReactなどの
最近のフレームワーク。違う書き方にしようとしたら
全体に手を入れなければいけない
76 : Name_Not - 2018/08/07(火) 09:14:39.72 ID:???.net (+62,+29,-121)
フレームワークは離脱するには設計から構造からやり直さないといけない
jQueryのようなライブラリは設計構造はそのままで済む場合が少なくない(※)が使用部分が広範になりがちで書き直し量が多い
※例えばアニメーション関係をjQueryに頼っていると構造にも絡んでくる
独特な機能を提供するライブラリは関係部分だけ書き直せば済むといえなくもない
77 : Name_Not - 2018/08/07(火) 13:11:22.50 ID:???.net (+57,+29,-54)
フレームワークで作られるのは迷惑。
意識高い系の人がフレームワークで使って作ったサイトをサーバに乗せるのに凄い苦労した経験あり。
78 : Name_Not - 2018/08/07(火) 13:16:32.94 ID:???.net (+4,-29,-24)
jQueryで唯一評価されるのはSelectorsAPIの基礎になったってことだけ
79 : Name_Not - 2018/08/07(火) 17:21:49.46 ID:???.net (+9,-30,-61)
element.style="width:100px;background-color:green;";
でいけたんだけど、element.style.width="100px"みたいにプロパティと値をわけて書くのと何か違いはありますか
80 : Name_Not - 2018/08/07(火) 17:38:56.47 ID:???.net (+12,-5,-2)
パース速度?
81 : Name_Not - 2018/08/07(火) 18:08:25.75 ID:???.net (+9,-30,-40)
可読性がよくないぐらいでは
element.setStyle({
 "width": "100px",
 "background-color": "green",
});
とかがあればいいな
prototypeいじりたくないけど
82 : Name_Not - 2018/08/07(火) 18:33:08.08 ID:???.net (+45,-30,-244)
>>79-81に便乗質問なんだけど
・element.styleにはCSSStyleDeclaration オブジェクトが入ってる
・element.styleに直接CSS定義テキストを代入できる
・element.styleに直接CSS定義テキストを代入した直後でも
 element.styleにはCSSStyleDeclaration オブジェクトが入ってるし
 element.style.width を変更することもできる

CSS定義に変更があった場合変更内容を元にelement.styleを再設定してるという感じだと思うんだけど
こういう挙動はどう理解したらいい?

より具体的には、ブラウザの実装がそうなってるというだけなのか
それとも同じような挙動をユーザがjsコードで実現できるのか
83 : Name_Not - 2018/08/07(火) 18:40:20.22 ID:???.net (+97,+30,+0)
84 : Name_Not - 2018/08/07(火) 19:09:44.83 ID:???.net (+7,-30,-42)
>>81
Object.assign(element.style,{
 width: "100px",
 backgroundColor: "green",
})

>>82
内部Proxyだと理解したら良い
85 : Name_Not - 2018/08/07(火) 21:00:21.68 ID:???.net (+3,-30,-165)
>>78
SelectorsAPIなんてjQueryの劣化版だろw

単にNodeListを返すだけで、そのNodeListを扱う方法まで作らなかった
jQueryはNodeListみたいに単に要素の配列を返すのではなく
要素の配列を内包した、jQueyrオブジェクトを返すことで
要素の配列そのものをメソッドで操作できる

ここが重要な所なのに、SelectorsAPIはそれを理解せず
単に要素の配列を返しただけ
86 : Name_Not - 2018/08/07(火) 23:07:26.82 ID:???.net (+11,-29,-39)
jQueryはいつgetContextに対応してくれますか
あとマウス座標取得決定版みたいなのも欲しいです
$(event)みたいにできたらいいのにな
87 : Name_Not - 2018/08/08(水) 01:20:21.73 ID:???.net (+104,+29,-11)
>>83-84
thx
あるんだな・・・意義はわかんなくはないけど正直どうかと思うが・・・
あとでじっくり読んでみる
88 : Name_Not - 2018/08/08(水) 03:22:44.19 ID:???.net (+3,-30,-200)
>>86
getContextに対応するだけでいいの?
canvas自体に対応しないとあまりメリットなくない?

jQueryになれてるなら、D3.js を使うのが良いと思う
canvas操作をjQueryライクに書くことができる
俺も普段はjQueryを使うけど、canvasを操作したい場合はD3.jsを使うよ

こんなk何時
http://codezine.jp/article/detail/7459

> D3.jsのセレクタを用いて宣言的に記述すると、以下のように簡潔に記述することができます。
> d3.selectAll("p").style("color", "white");
>  コードも、d3.selectAll("p")ですべてのp要素を取得、style("color", "white")で
> 文字色を白に設定、と直観的で分かりやすくなったのではないでしょうか。
89 : Name_Not - 2018/08/08(水) 03:25:55.79 ID:???.net (+4,-30,-267)
>>86
> $(event)みたいにできたらいいのにな

$(window).on('mousemove', function(event) {
 console.log(e.screenX);
 console.log(e.screenY);

 console.log(e.pageX);
 console.log(e.pageY);

 console.log(e.clientX);
 console.log(e.clientY);

 console.log(e.offsetX);
 console.log(e.offsetY);
});
90 : Name_Not - 2018/08/08(水) 03:26:27.64 ID:???.net (-2,-30,-54)
あ、間違った。

× console.log(e.screenX);
○ console.log(event.screenX);
以下同じ
91 : Name_Not - 2018/08/08(水) 06:59:52.39 ID:???.net (+71,+29,-45)
>>87
今だったらもしかしたらゲッターセッターになるのかもしれないけど
それらがJSに無かったころからCSSOMはあるしね
配列のlengthのようなものだよ
92 : Name_Not - 2018/08/08(水) 07:13:44.97 ID:???.net (-1,-29,-48)
array.lengthはちょっと違うのでは
array.lengthを書き換えても即座に自動的に書き換えられたりしないだろう
93 : Name_Not - 2018/08/08(水) 12:49:52.74 ID:???.net (-1,-29,-48)
するよ
TypedArray の様にゲッターやセッターではなく
プロパティアクセス時に0や1などと同等にフックして内部プロパティを変更してる
95 : Name_Not - 2018/08/08(水) 23:50:17.01 ID:???.net (+37,+14,-3)
変数に型は付けないよ。
96 : Name_Not - 2018/08/09(木) 01:02:42.65 ID:???.net (-4,-30,-169)
>>94
昔ES3(ECMAScript 3)っていうのがあって、その後普及したのがES5
今はES6という名前だったのがES2015に変わって、ES2016だとかES2017だとか・・・

それは良いとして、ES3とES5の間にあったのがES4
ES4の夢は壮大で、クラスベースで型もあって・・・
そのES4に完全準拠することを目標にActionScriptは開発されていた

ところがES4の夢があまりにも無謀で破綻した。
そして型などの機能を減らして現実的にしたES5ができた

ActionScriptは破綻したES4相当なんだよ。消えたES4の成れの果て

JavaScriptに準拠しつつ型を取り入れたのはTypeScript
97 : Name_Not - 2018/08/13(月) 00:31:27.24 ID:???.net (+183,-30,-115)
A → B → C → D
とasync関数が繋がってるのをイメージしてください
Aから始まりEが完了すれば順にC、Bと完了してAに戻ってくるイメージです

ここで、Dの段階でBからの流れをやりたいとします
しかし、Dの次にBを続けると、
それまでのB → Cの流れの中で消費されているメモリが残ってしまいます。

もうDや過去のCやBに戻らせる必要はありません。
しかし、Dを開放してB'を開始すると、Aまで完了してしまい、それはよろしくありません。

A → B → C → D
まで来たところで
A → B → C → D → B' → C' → D'
となるのはメモリリークしやすく、チェーンが非常に長くなると色々なバグも発生しやすく
デバッグのしやすさにも関わってくるので避けたいです

とはいえ
A → B → C → D -...> B' → C' → D'と切り離すと
Aで行っている初期化・完了・例外処理から外れていってしまうため問題です

理想的には、チェーンをA → B' → C' → D'
とつなぎ直したいのです
どうしたらよいでしょうか
98 : Name_Not - 2018/08/13(月) 01:33:40.26 ID:???.net (+52,+29,-5)
ただの再帰とちゃうの
99 : Name_Not - 2018/08/13(月) 05:23:13.35 ID:???.net (+57,+29,-40)
設計段階でみょうちきりんな動きの要求を加味しとけよ
100 : 97 - 2018/08/13(月) 10:40:04.67 ID:???.net (+90,-30,+0)
仕様としては、どの処理進行状態でもリセット、ぶつ切り行為が発生しうるという状況です
一応今はBで作業キューを持ってそれにCを追加する形にしていますが、
いかんせんコードがキレイではありませんし、僅かな仕様妥協が入ります

おそらくPromiseのラッパー的なとこから、根本的な非同期チェーン構造を
素朴なPromiseではなく1から考え直して別の物にすべきだと思うのですが
いいアイディアは無いでしょうか

全てのasync、async generator関数でCancelの概念と実装をしたら良いのでしょうか
全てのawait時にそれがCancelかどうかチェックして処理をするとか
それはそれで漏らせないコードが多くなりそうですし、処理が複雑になりそうです

一応今は各処理にセッションを渡すようにしていて、表に影響がある処理ではそのセッションが切れていたら何もしないことで、
特にイベント等から繋がる不要なチェーンが発動しても空回りさせることで影響がないようにしています
今はメモリの開放は時間経過やイベントをあえて見捨てたチェーンに伝わらせて
空回りを利用して自然と勝手にほぐれて、その後GCが回収してくれることに頼っています

しかし、今回は下手に空回りもさせたくないという状況です
コードを極力シンプルに保ちながらしっかりしていてかつ柔軟性も持った非同期処理構造を作るにはどうしたらよいでしょうか

例えば非同期でも、場合によっては完了を待たずに次に進みたいことってありますよね
例えば、Loadingを表示するとき
await View.fadeInLoadImage()
let file = await Network.fetchFiles( )
await View.fadeOutLoadImage()
とするとフェードイン、アウトの時間が無駄なので
View.fadeInLoadImage()
let file = await Network.fetchFiles( )
View.fadeOutLoadImage()
とすると思います。ですが、このフェードが動いているときに
コンテキストがリセットされると、色々懸念事項が生まれます
そういうのもスマートに扱える方法を知りたいです
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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