X



+ JavaScript の質問用スレッド vol.126 +
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん垢版2018/06/02(土) 14:31:23.04ID:B1JKBGEy
JavaScript を自ら学ぶ人のための質問スレッドです。

■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
  (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
  具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
  わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
  ※必ず「問題の事象が再現されること」を確認してください。
   必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。


前スレ
+ JavaScript の質問用スレッド vol.125 +
https://mevius.5ch.net/test/read.cgi/tech/1518940081/

(ライブラリ禁止条項は、多数の意見によって廃止されました。ライブラリの質問もOKです)
0002デフォルトの名無しさん垢版2018/06/02(土) 19:57:34.11ID:XIvhMjpN
(10) ライブラリ関連の質問は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。
0003デフォルトの名無しさん垢版2018/07/04(水) 22:36:56.65ID:gFgZc5FG
BSC
0004デフォルトの名無しさん垢版2018/08/14(火) 21:41:12.61ID:MYKilrFy
超ド素人です。スレ汚しをお詫びします。
D3.jsを使ってグラフを描画するhtmlがあり、そのグラフのデータが.tsvで読み込まれるようになっている場合、どこに.tsvファイルを置けば良いのでしょうか?
というか、そもそもtsvもhtml?javascript?コードに含めるのでしょうか?
さっぱり見当違いなことを言っていたらすみません。
よろしくお願いします。
0006デフォルトの名無しさん垢版2018/08/14(火) 23:30:00.67ID:6NKcX7Ow
「d3.js tsv」で検索!

HTML ファイル
<script src="js/sample.js"></script>

sample.js ファイル
d3.tsv("data/data.tsv", function(error, data){

data/data.tsv は、sample.jsからの相対パスか?
または、HTMLファイルからの相対パスか?

または、プロジェクトルートからの相対パスか?
または、カレントディレクトリからの相対パスか?
0008デフォルトの名無しさん垢版2018/08/18(土) 10:48:15.65ID:k5A8heiz
<input type='submit' value='送信'>
をクリックしたとき送信する前に、何かしてから
送信するにはどうしたらよいですか?
0009デフォルトの名無しさん垢版2018/08/18(土) 11:01:57.73ID:5gN61dbI
なにかするってお願いでもするの?
ちゃんと合格できますようにって
何をするかによって、何処にお参りに行けばいいか変わる
0012デフォルトの名無しさん垢版2018/08/22(水) 01:35:30.51ID:gDXxyo9q
== はなるべく型を合わせようとしてから比較する
=== はそのまま比較する

詳しくは MDN の演算子のページとか
あとは「JavaScript 暗黙の型変換」でググれ
0016デフォルトの名無しさん垢版2018/09/03(月) 21:37:00.45ID:j2ZKOITT
直接javascriptの事ではないと思いますが、すみませんこちらで…

Googlechrome右クリックメニューをjavascirptを勉強して簡単なものを作成してみました。
右クリックメニューはショートカットキーを割り当てることもできると思うのですが、
右クリック、ショートカットキーを押す、という流れでなく、
chromeを開いた状態で
最初から「Ctrl+何か」 などで 右クリック→ショートカットキー
となるプログラムは、どの言語あたりなら作成できそうでしょうか・・

ショートカットキーを押すだけで右クリック開く→選択
というものを省くのが狙いですがすみません。
なんとか開発したくすみません・・
0017デフォルトの名無しさん垢版2018/09/03(月) 22:14:12.93ID:E2St7m4+
https://ideone.com/YCk1t6

javascriptで普通にキーイベントと一緒に修飾キーも拾えてるようだが
コレじゃダメなのか
0019デフォルトの名無しさん垢版2018/09/04(火) 13:48:37.40ID:R4rr/j55
>>17-18
ご指示頂けても難しかったですが
なんとかできました。有難うございました!
0020デフォルトの名無しさん垢版2018/09/04(火) 15:07:15.64ID:JkSql3w1
>>14
ショートサーキット(短絡)評価とかだろ。
AND, OR, ||, && など

例えば、A AND Bという論理式があった場合、
Aがfalseなら、その時点で式全体の結果は、falseで確定するため、
Bがどうであるかについてはチェックしない

この場合、式B が評価(実行)されないから、
B に関数呼び出しとか、変数を更新するなど副作用があると、
if, else 文で書くよりも、可読性が低い

「javascript 短絡評価」で検索!
0022デフォルトの名無しさん垢版2018/09/05(水) 18:49:07.37ID:Vic/5rK1
ファイルリーダーについての質問です。ここのソースを使ってます
https://www.sejuku.net/blog/32532

ファイルを読み込んだ後
var a=reader.result;
var b=a.split(',');
とやるとb[]の変数がsubstringなどが使えなくなります
aの段階では文字列として認識されてますがbになると変になります
readerを使わずに文字列でsplitすると普通にsubstringが使えます
いろいろ試しましたが原因がわかりません
0024デフォルトの名無しさん垢版2018/09/05(水) 19:34:21.13ID:Vic/5rK1
読んだけどわかりません
終了後の result プロパティには、ファイルの内容をテキストとして読み取った文字列が格納されます。
と書いてます
0026デフォルトの名無しさん垢版2018/09/05(水) 20:06:14.26ID:Mk6ELM5E
なんでこういう連中は再現する最小コード書かないかなぁ
そういう発想がないからバグの原因特定が出来ないんやで
0029デフォルトの名無しさん垢版2018/09/05(水) 20:40:06.05ID:Vic/5rK1
どうやらVisual studio Codeの仕様のせいだったみたいです
変換候補に出ないのでどこかに文法の間違いがあると思ってました
コード自体にエラーはなかったようです
0030デフォルトの名無しさん垢版2018/09/05(水) 20:47:44.87ID:PklssQfn
仮にそうだとしても人はそれを凡ミスと呼ぶ
どうでもいいことで1時間潰したんだし
0032デフォルトの名無しさん垢版2018/09/05(水) 21:43:32.66ID:ymqGMHGu
>>29
>>23
>このプロパティは読み込みが終了した後に有効になり、プロパティのデータ型は読込処理を行うメソッドによって変わります。
0033デフォルトの名無しさん垢版2018/09/05(水) 21:43:56.97ID:PklssQfn
そのレベルでインテリセンスが機能しないのなら既に遭遇して知っているはずだし、
今回初めて遭遇したのなら何らかの問題がコード側にあるだろ。
動的型だから何に対して substring を使っても文法エラーにはならない。
これで通ったと勘違いしているだけだね。多分。
0034デフォルトの名無しさん垢版2018/09/05(水) 23:25:19.78ID:Vic/5rK1
VSCの仕様です
var a=reader.result.tostring();
にすればできるようになったのでそれで原因解決かとおもったけど
他の関係ない箇所でもsubstringの予測がでてこないのでおかしいと思って
調べると var が原因らしいとわかった
var a=reader.result;
var b=a.split(',');
という書き方ではVSCではbの型が確定しないので予測候補にでてこない
最初にvar a="";と入れてやると候補にでてくるようになる
ただし候補でないからといってエラーになるわけではない
0035デフォルトの名無しさん垢版2018/09/05(水) 23:37:04.75ID:Mk6ELM5E
VSCの仕様でもなんでもないやん>>23のドキュメントにFileReader.resultの型はstring|ArrayBufferだって書いてあるのを読めなかっただけやんけ無能
0036デフォルトの名無しさん垢版2018/09/05(水) 23:48:59.21ID:PklssQfn
「俺ではなく他の問題だ」と主張するのは初心者の典型的パターンだな。
そして100%「お前の問題だ」となるお約束展開。
昔はこのタイプは居なかったと思うのだが、何でこうなるかな?
0037デフォルトの名無しさん垢版2018/09/05(水) 23:50:57.88ID:Vic/5rK1
>>35
質問スレで意味のわかない用語で返すのやめてもらえますか
そもそも書いてる事理解できれば質問スレにきません
0038デフォルトの名無しさん垢版2018/09/06(木) 00:01:10.33ID:K6tuSvr0
結果は文字列かも知れないしそうじゃないかも知れない
これじゃあ予測候補出せるわけ無いよね
以上
0039デフォルトの名無しさん垢版2018/09/06(木) 00:03:23.05ID:/8o/0CpY
>>37
当たり前だがMDNやMSDNは普通のレベルのプログラマなら読めるように書かれている。
理解出来ないのなら自分の馬鹿さ加減を自覚し、責任転嫁するのは止めた方がいい。
0047デフォルトの名無しさん垢版2018/09/06(木) 17:01:47.10ID:ZRGsnqPQ
じゃ質問はもうとっくに終わってるので関係ないですね
それに必要な情報は書いていたはずです
最初から型の問題だと限定して問題なのはたった2行ですし
リファレンス読めばわかるというなら誰でもresultの仕様みれば答えられるはずですよね
それなのに後出しでイキってくる人ばかり
0050デフォルトの名無しさん垢版2018/09/06(木) 18:57:38.11ID:4aYwdhCB
>>47
問題なのはその二行じゃない。
その二行に気づかないお前と、その二行で正しいと思ってる今の理解力と、
それでもなおまだ自分に非がないと思ってるお前の人格だ。

/** @type String[] */なり、/** @type string*/で解決するだろ。無理に型変換したり初期値入れたりしなくても。
無理に推論させるためにソース自体に無駄なコードを書くな。

インテリセンスは万能じゃないし、インテリセンスが出ないから使えないと思うのも頭おかしい。
実際にエラーになってから言え。
原因はみんなある程度わかってて、その原因についてお前が切り分けられるかを問題にしてて、案の定お前は切り分けできなかった。
それでお前は、回答者が答えを教えない事を批判してるようだが、そのへんがそもそも噛み合ってない。
誰も答えがわからなかったんじゃない。

皆のヒントでお前が答えがわからなかったんだ。
0051デフォルトの名無しさん垢版2018/09/06(木) 18:59:30.79ID:4aYwdhCB
そもそも余計な代入して、それで解決したと思うほうが頭おかしいだろ。
何が起こってるかぐらい把握しろよ。
0053デフォルトの名無しさん垢版2018/09/06(木) 19:12:11.44ID:ZRGsnqPQ
人が事細かく詳細説明した後ならなんとでもいえますよね
あきらかにわかってる人いなかったっぽいし
0054デフォルトの名無しさん垢版2018/09/06(木) 19:17:29.62ID:4aYwdhCB
>>52
質問スレなんだから質問する人間が理解できるレベルであることを求めてもおかしくはあるまい。

>>53
お前が説明しなくてもわかってるし、型ヒントで充分なのは
>>23読んだらわかる。即レスで答え出てる。
0055デフォルトの名無しさん垢版2018/09/06(木) 19:18:20.61ID:Wz0pb6Ha
>>47
> それに必要な情報は書いていたはずです

- 環境(Visual studio Code)を書いていなかった
- 「...とb[]の変数がsubstringなどが使えなくなります」と誤った判断から、誤った情報を開示していた(変換候補に出ないのでどこかに文法の間違いがあると思っていた)

どう見ても、>>22の情報開示ミスだけとね
「22の思いこみによる勘違い」をエスパーして、「未開示情報」をエスパーしないと、回答不可能だよね
0056デフォルトの名無しさん垢版2018/09/06(木) 19:18:34.10ID:4aYwdhCB
お前以外はとっくに気づいててそれ以上言わなかっただけ。
お前はその上間違った解法が正しいと思ってる。
致命的。
0059デフォルトの名無しさん垢版2018/09/06(木) 19:19:50.97ID:4aYwdhCB
インテリセンスに出ないから間違ってるに違いない、と言う思い込みも異常だけど、インテリセンスに頼るならインテリセンスに対してちゃんと情報を提示するのは当然だし、
それは無駄な代入で行われるべきではない。
0062デフォルトの名無しさん垢版2018/09/06(木) 19:32:42.30ID:ZRGsnqPQ
>>55
aは文字列として認識している
bは文字列として認識していない
仕様がわかってれば答えでてるも同然じゃないですか?
少なくともエスパーしないと無理というレベルではないでしょう
0065デフォルトの名無しさん垢版2018/09/06(木) 19:38:15.88ID:4aYwdhCB
>>62
お前がエスパーを求めたのは「エラーになる」という発言。
実際にはならない。
文字列として認識させたいなら、文字列として認識してくれるように頼めばいいだけで、
それが型ヒントだけど。
0066デフォルトの名無しさん垢版2018/09/06(木) 19:39:24.89ID:4aYwdhCB
人には偉そうに言ってたみたいだけど、いきがるのもいい加減にして無知を認めろ。
それが質問者だ。
0067デフォルトの名無しさん垢版2018/09/06(木) 19:41:54.28ID:ZRGsnqPQ
無知でなければ質問スレにはきませんよ
エスパーしないと無理といってるし他の人はわかってなかったですね
0069デフォルトの名無しさん垢版2018/09/06(木) 20:06:23.27ID:/8o/0CpY
>>67
普通は>>22からはシンタックスエラーまたは実行時エラーと受け取るんだよ。
インテリセンスに出てこないだけという意味だと君が言ったのは>>29でしょ。
君はそこらへんから間違っている。

とはいえ、ここまで主張しまくる馬鹿も珍しいが。
まあ最初から再現コードを上げてれば防げた話だね。無能ってのは事実だよ。
0070デフォルトの名無しさん垢版2018/09/06(木) 20:20:52.28ID:4aYwdhCB
>>67
多分お前がまだ良く分かってないから、大多数が分かってるのが理解できないんだと思うけどな。

無知を認めるなら、間違った解決法に対して「これでいい」「これで問題ない」「これがVSCodeの仕様」と思い込むな。
無知すぎてその解決法も間違ってて依然無知だと言うことにすら気づいてない。
ちゃんと真摯に聞け。
0071デフォルトの名無しさん垢版2018/09/06(木) 20:40:13.28ID:ZRGsnqPQ
いじってくるから返してるだけですが
もう解決済みの問題ですよ
コードも思った通り動きますし
どこかに認識不足があったとしても後は自力でどうにでもなります
0072デフォルトの名無しさん垢版2018/09/06(木) 20:56:23.16ID:4aYwdhCB
解決済みだと思いこんでる問題だろ。
認識不足ではなくて勘違いどころか、壁に釘を打ち込む為に金槌使わずにレンガ使ってるのを「これで解決しました。もう問題ありません」って主張してるようなもんだぞ。
自力でどうにもなってないから、間違ってる、型ヒント使えと言ってるんだよ。
自力でどうにかなってるという勘違いをまず改めろよ。
なんの為の質問と耳の痛いレスなんだよ。

釘は金槌で打つもので、レンガでも打てるけどそれは根本的に間違ってる。
それぐらい認識しろ。
0074デフォルトの名無しさん垢版2018/09/06(木) 21:14:28.43ID:4aYwdhCB
確かにあとから苦労するだろうな。中途半端で理解した気になって、あまつさえ人につっかかる人間性だと。
0075デフォルトの名無しさん垢版2018/09/06(木) 21:18:49.68ID:4aYwdhCB
まぁ、いよいよ言うに困ったら「いじってくるから返してるだけ」なんて言うレベルだし仕方ねえかな。
無駄な時間使ったわ。

いじられてんじゃなくて良くなるように指摘されてると理解できないとか、よっぽどプライドと意識の高い人なんだろう。
他人に無能と言う割に、無能と言われるとムキになるところからもわかるけど。
0076デフォルトの名無しさん垢版2018/09/06(木) 21:38:27.78ID:ZRGsnqPQ
プログラムを動かすことが目的なのであって完璧で無駄のないプログラム
を目指すのが目的ではないので問題ないですよ
あと教えたいのか教えたくないのかはっきりしましょうね
1レスで済む問題です
人格攻撃挟んだり説教はさんだりそれこそ無駄ですよ
自分が答えるときは手本のコード貼るだけですけどね
0077デフォルトの名無しさん垢版2018/09/06(木) 21:52:51.80ID:/8o/0CpY
>>76
> 自分が答えるときは手本のコード貼るだけですけどね
君が答えられるようになるまでに何年かかるかだね。
君みたいな「完璧超人な俺が間違うはずがない」って勘違いは、
昨日プログミングを始めました、みたいな奴に多いのだが。
0078デフォルトの名無しさん垢版2018/09/06(木) 22:13:41.83ID:ZRGsnqPQ
>>77
もう何度も答えてますよ
わかればコード書いてわからなければスルーで済む話
この手の質問スレにはろくに答えもしないのに説教したがりが多いですね
まったく無駄な存在w
0080デフォルトの名無しさん垢版2018/09/07(金) 07:48:35.79ID:6E8Xbbh2
>>76
問題ないと思うならもうそれでいいよ。
>>78
間違った答えだけどね。
釘を打つにはレンガが良い、みたいな答え。
0082デフォルトの名無しさん垢版2018/09/07(金) 19:06:38.66ID:6E8Xbbh2
>>81
書いたじゃんw
理解してレスしなければ話は終わってたのに、どうして?
理解できてないから間違った答えだと認めたくない、ならそう言えば?
0083デフォルトの名無しさん垢版2018/09/07(金) 19:34:04.35ID:LPuBQhPk
こっちは配列文字列に入りゃそれでいいんだよw
プライド高いだの苦労するだのもっとよくしてやろうとか大げさなんだよw
なんだよそのたとえ話はw禅問答かよw
0084デフォルトの名無しさん垢版2018/09/07(金) 20:35:16.19ID:6E8Xbbh2
そういう意味では最初から文字列の配列に入ってる。
ただインテリセンスが判断しきらないだけ。
だからJSDoc書くんだよ。
大げさも何もw
言い方やら何かしらをやりだまにあげて、本当に言いたい事をごまかすの辞めたら?
言っていいよ。惨めだから辞めてくれって。
0086デフォルトの名無しさん垢版2018/09/07(金) 21:32:36.73ID:LPuBQhPk
最初からエラーじゃなかったと言ってるだろうがw
だからおまえの解決法は間違ってるとかこいつなに言ってんだろうとw

まぁそんなことは放っといてどんどんプログラム書き進めて完成したところだ
0088デフォルトの名無しさん垢版2018/09/08(土) 22:21:19.25ID:ddYbzdu2
[63,61,59,57,55].forEach((v,i)=>{
})
[63,61,59,57,55].forEach((v,i)=>{
})
二つ目がエラーになる
なぜなのか... 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)
0090デフォルトの名無しさん垢版2018/09/08(土) 22:56:30.05ID:OKOnzFKW
ついでに

TypeError: Cannot read property '55' of undefined

からundefinedの55番目を参照しようとしているのは分かるわけだから3行目の[]がインデクサとして解釈されていることも明らか
0091デフォルトの名無しさん垢版2018/09/09(日) 06:48:20.06ID:GRBQvFvB
>>90
それはわかる
>>89
ありがとう。びびったわ
0092デフォルトの名無しさん垢版2018/09/09(日) 15:56:13.70ID:Qg0vuvcZ
node.jsのhttpモジュールでapiからjson取得してそれを使ってゴニョゴニョしたいんですが
レスポンスが終わった際jsonを返すにはどうしたらよいのでしょう?
promise使って返す事は出来たのですが他の方法があればご教授ください
0096デフォルトの名無しさん垢版2018/09/12(水) 09:03:15.84ID:ZA2SnA8s
think49に粘着してる奴、過去にthink49と何かあったの?(あるいは、マルチポスト晒された質問者が逆恨みしてるの?)
反論してる人を全てthink49と思いこんでるようだけど、スレ違いの話題を延々と続けられて迷惑してる人が大勢いることにまだ気が付かないわけ?
質問者の為を思うなら、質問者がクローズしたここで苦情を申し立てるより、質問継続しているteratailで回答してくるべきでしょ
009795垢版2018/09/12(水) 09:04:03.48ID:ZA2SnA8s
ごめん、スレ違い
0098デフォルトの名無しさん垢版2018/09/12(水) 11:14:35.86ID:AqE8/xq/
>>95
ts使ってるけど、lintでセミコロン使わない設定にしてる。それでなんの問題もないけど。
なんでセミコロン抜くとエラーになるん?
0099デフォルトの名無しさん垢版2018/09/12(水) 18:16:28.94ID:yjQ+UVp3
ご質問です。
当方デザイナー兼コーダーとして、自社サイトの制作に携わることになりました。
その際サーバー側を担当するエンジニアからjqueryはもう古いから、他のライブラリを使うかせめてjavascriptで実装するようにと言われました。
大手のサイト等拝見しても、jqueryは現役ですし、特に陳腐化するような懸念は感じられなかったのですが何か理由があるのでしょうか。よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況