X



+ JavaScript の質問用スレッド vol.129 + [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001Name_Not_Found
垢版 |
2016/02/24(水) 00:48:25.01ID:???
JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-6のテンプレを読んだ上で質問してください。次スレは>>950>>2のテンプレ案(本スレで改善案があれば考慮)を元に立ててください

■規則/推奨ルール
・メール欄を空欄にし、名前にレス番を入れることを強く推奨(なりすまし防止)
・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問テンプレートの利用推奨。
・質問への「答え」だけでなく「意見」を出しても良い。

■禁止行為
・丸投げ質問
・迷惑スクリプトの質問
・オレオレ用語の使用(一般的な用語を使用する事)
・煽り、批判等の他人を不快にさせる行為(批判の代わりに「AよりBが良い」のような代案を出す事)
・回答者同士のレスは原則禁止(>>6を参照)
・ライブラリの話題の投稿(>>6を参照)

■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。(ex: IE8, Firefox4)
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用)
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
 1レスに収まらないならコード投稿サイトを利用してください。
 http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
0207Name_Not_Found
垢版 |
2017/04/08(土) 11:52:20.13ID:???
幾つかのブラウザでBlobを扱うAPIのメソッドはメモリリークを起こすが、
その実装はバクと言い切れず仕方ない面もあるという話をしてるんだけど、
まだわからないか?
0208Name_Not_Found
垢版 |
2017/04/08(土) 12:00:51.08ID:???
>>207
そのバグをJavaScriptのコードで修正できるわけがないじゃん。
JavaScriptのコードで修正しようと思っても出来ないからこそ
バグなんだから。
0209Name_Not_Found
垢版 |
2017/04/08(土) 14:21:17.88ID:???
>>208
そうだね。
で、何が言いたいかって言うと、メモリリークで実際頭悩ませるのは
こういうバグチックなことのほうが多いってこと。
例えどんなコードでも不要になったらnullを代入を徹底するようにしても、
その労力に見合う程の効果があるか疑問ってこと。

経験上、こういう細かな1行で解決できることは少ない。
バグにしろ、アルゴリズムの不備にしろ、小さくはあるけど、
ヘルパー関数レベルで別手段に書き換えて対処する事が最も多い。
0210Name_Not_Found
垢版 |
2017/04/08(土) 17:11:26.92ID:5JuwuUj/
>>206
参照先でそれがnullかオブジェクトかを判断してメソッド呼べばいいじゃん
有れば使う、無ければ使わないって実装だってあるでしょ
0211Name_Not_Found
垢版 |
2017/04/08(土) 17:16:42.08ID:???
>>210
メソッドを呼んでなにかの処理をしたい場面で、
そのメソッドを呼ばなくて、正しく動くわけがないだろ
アホなのかな?
0212Name_Not_Found
垢版 |
2017/04/08(土) 18:40:49.80ID:5JuwuUj/
>>211
「何かの処理をしたい場面で」したい場面ってなに?プログラムに意思なんてないでしょう
プログラムにしたがって処理をして、処理対象が無ければ処理をしないなんてごく普通のことだとおもうけど
絶対にそれがあるという前提でプログラムしているなら無ければ困るケースが起こるだろうけどね
君は想像力ゼロなのかい?
0213Name_Not_Found
垢版 |
2017/04/08(土) 18:50:55.72ID:???
>>212
> 処理対象が無ければ処理をしないなんてごく普通のことだとおもうけど

場合によるだろ

想定外の事態なのだから通常はエラーにするほうが正しい。

なんでそんなこともわからんのだ?
0214Name_Not_Found
垢版 |
2017/04/08(土) 21:04:19.15ID:5JuwuUj/
>想定外の事態なのだから通常はエラーにするほうが正しい。

なぜ想定外の事態だと決め付けるのかな?
そして「処理をしない」=何もしないとなぜ脳内で決め付けるのかな?
処理対象がない->処理をしない(出来ない)->エラー処理or別の処理
ケースは色々あるでしょうに

きみまともなプログラムした事ない人でしょ?
0215Name_Not_Found
垢版 |
2017/04/08(土) 21:21:25.96ID:???
ないかもしれない場面で、ない事を確認して処理を変えるのは正しい
正しく動いていればないことはありえない場面で、ない事を確認して処理を変えるのは間違いで、例外を投げるのが正しい
今は後者の話をしているので、例外を投げる以外の選択肢はない、と言いたいのでは?
0217Name_Not_Found
垢版 |
2017/04/08(土) 22:31:55.51ID:5JuwuUj/
>「正しく動いていればないことはありえない場面で、ない事を確認して処理を変えるのは間違いで」

まだ決め付けてるの?だれも最初からそんな事言ってないんだけどね
君が勝手に「自分の想定」を加えてわけのわからない断定をしてるだけでしょう
0218Name_Not_Found
垢版 |
2017/04/08(土) 22:42:58.80ID:5JuwuUj/
>「今は後者の話をしているので、例外を投げる以外の選択肢はない、と言いたいのでは?」
勝手に後者の前提で話を始めたのは誰かな?
そしてさ、君プログラムわかってる?
例外、例外というが、その例外はどうするの?まさか投げっぱなしでプログラムをとめるの?
開発中ならともかく普通はその例外をキャッチして相応の処理なり表示なりするでしょう?
状況によってはロールバック的な処理は当然必要だよね
わかるかい?要するにこれって状況に応じて別の処理をしてるんだよ
例外はその検出手段にすぎない
君、大きな勘違いしているようだけどIF文で戻りをチェックすることと例外を出す事は本質的には変わらないんだよ
それをどのレイやでキャッチするか、その手法の違いなんだよ
0219Name_Not_Found
垢版 |
2017/04/08(土) 23:13:36.23ID:???
あ、さわっちゃいけない子だったか
0220Name_Not_Found
垢版 |
2017/04/09(日) 08:26:43.17ID:???
また自分より下を作ろうと必死なやつわいてるのかよ。
0221Name_Not_Found
垢版 |
2017/04/09(日) 12:00:09.81ID:???
>>218
話がずれてるぞw

バグでメモリが解放されないものを
無理やり解放する方法(そんなものはないけど)を
使って解放した所で、お前のバグは治らないって話だ。
単にお前のバグが見つけづらくなるだけの話
例外で何もしなければ、例外は起きてないと主張しているのと一緒
0222Name_Not_Found
垢版 |
2017/04/09(日) 15:18:59.43ID:???
バグでメモリが開放されないのは良くあるし、
無理やり開放する方法は稀だが、ちょっと手間をかけて回避する方法ならあることも多いよ。
0223Name_Not_Found
垢版 |
2017/04/09(日) 16:28:03.70ID:???
>>222
バグはイレギュラーな存在なので、
そのイレギュラーなものに汎用的に対応できる方法などない

回避策はバグ次第なのだから、通常のメモリ解放処理でメモリリークするものが
強制的に解放する方法(そんなものないが)で動くとも思えない
そんなものを用意したら新たなバグを増やすだけ
0224Name_Not_Found
垢版 |
2017/04/09(日) 17:51:40.18ID:laRj46NX
>>221
あれ?草まで生やして必死に話を逸らして何がしたいんだい?
「例外=別の処理をしない」って件を早く釈明しなよ
だいじょうぶ?
0225Name_Not_Found
垢版 |
2017/04/09(日) 17:53:33.59ID:laRj46NX
>「例外で何もしなければ、例外は起きてないと主張しているのと一緒 」
例外で何もしないっていう主張をしてるのは君でしょう?
例外をハンドリングして通常とは別の処理をするという考えすら頭になかったレスしかしてないじゃん
で?
「例外=別の処理をしない」って件を早く釈明しなよ
まだかな?
0226Name_Not_Found
垢版 |
2017/04/09(日) 18:00:32.80ID:laRj46NX
しかし、このバグバグと連呼してるアレな人は本当にプログラムの基本すらわかってない様子だね
彼いわく、
「参照がある=処理できるべき!」
「参照先の確認をして別の処理をするのは不要!」
「例外だせばいい!」
だもんなぁ
そもそもプログラムなんて全が自分のプログラムの範囲で値が確証されているものだけじゃないのにね
ファイルや通信、その他もろもろ不確定要素なんてあるのが当たり前なのに
実行前に確認or例外をキャッチして別処理なんてごく普通のことじゃん

だいたい、参照がある=処理できて当たり前って考えがそもそもおかしい
参照だけ残ってても中身が変化してれば意味無いのにね
ライブラリ開発とかしたことないんだろうな
0227Name_Not_Found
垢版 |
2017/04/09(日) 18:08:47.72ID:???
池沼は隔離スレのわっちよいでやれよ。
0228Name_Not_Found
垢版 |
2017/04/11(火) 10:36:23.34ID:c8XkHFfV
Tue Apr 11 01:05:14 +0000 2017
すいませんこの文字列を日本時間に直したいのですがどうすればいいでしょうか
0229Name_Not_Found
垢版 |
2017/04/11(火) 19:43:30.99ID:???
new Date();

をググれ超絶初心者よ
0230Name_Not_Found
垢版 |
2017/04/12(水) 08:26:40.69ID:???
Tue Apr 11 01:05:14 +0000 2017

こういうフォーマットから、日時オブジェクトを作成するのは、ブラウザ依存じゃないの?
たぶん、全社共通のフォーマットというのは無い
0232Name_Not_Found
垢版 |
2017/04/12(水) 09:19:01.13ID:???
>>231
ISOいくつなん?
RFC822っぽいけど惜しいね
0233Name_Not_Found
垢版 |
2017/04/12(水) 12:35:25.83ID:???
>>232
ISO8601。あ、俺が言ってるのは、全社共通フォーマットはあるよ、って話。
0234Name_Not_Found
垢版 |
2017/04/12(水) 14:22:44.26ID:???
>>233
そういう意味か

Tでつなげるの大嫌いなんだけど、あれ策定したやつ誰なん?
ちょっとみんなの前でドゲザさせたいわ
0235Name_Not_Found
垢版 |
2017/04/12(水) 18:19:29.92ID:???
土下座するのはお前
たくさん種類がある空白を使わなくていいように
あえてそうしてることくらい分かるだろ
0236Name_Not_Found
垢版 |
2017/04/12(水) 21:51:06.99ID:???
俺ならこうするかな?

2017-04-01@12:00:00$
2017-04-01@12:00:00+09:00$

もしくはこういう形なら統一感あっていいかも

D2017-04-01T12:00:00Z
D2017-04-01T12:00:00+09:00Z


>>235
おまえはばかだなぁ
0237Name_Not_Found
垢版 |
2017/04/12(水) 22:46:39.01ID:???
またやってるのかよ。
質問者に正解の答えもしくは誘導できたらそれで終了のスレで自分より無能な下を作ろうと必死なやつはワッチョイ隔離スレでやってくれ。
0238Name_Not_Found
垢版 |
2017/04/12(水) 22:57:22.13ID:???
・質問への「答え」だけでなく「意見」を出しても良い。
0239Name_Not_Found
垢版 |
2017/04/12(水) 23:33:53.40ID:???
漏れは、2chの日時表示から、正規表現で、Date型へ変換した
var str = "2016/09/09(土) 09:00:08.09 ";

var re = /(\d+)\/(\d+)\/(\d+)/; // 日付
var ary = str.match(re);

var re2 = /(\d+):(\d+):(\d+)\.(\d+)/; // 時刻
var ary2 = str.match(re2);

// Date 型へ変換する。
// ary[2]は、-1。ary2[4]は、10倍
var dt = new Date(ary[1], parseInt(ary[2]) - 1, ary[3],
ary2[1], ary2[2], ary2[3], parseInt(ary2[4]) * 10);

console.log(ary, '\n', ary2, '\n', dt, '\n',
dt.getMilliseconds() + "ミリ秒");

出力
Fri Sep 09 2016 09:00:08 GMT+0900 (東京 (標準時))

何かのライブラリに、変換できる関数があるかも?
無ければ自分で作る。
jQuery UI にも、DatePicker というのがある
0240Name_Not_Found
垢版 |
2017/04/12(水) 23:48:46.62ID:???
JavaScriptで日付用ライブラリとして有名なのはmoment
0241Name_Not_Found
垢版 |
2017/04/13(木) 02:44:15.09ID:???
>>237
何度も書いてるが意味わからんよそれ
誰かの発言で上下が変わったり無能になったりする訳でもないし
本当に無能だと思えば取り合わないだけでしょう
0242Name_Not_Found
垢版 |
2017/04/13(木) 07:48:47.09ID:???
@と$は本質的に全く変わってないじゃん。
頭にDは無駄。
Tは、Tまで読み飛ばすシーンがあるから必要なのであって、先頭文字は必要ない。
時刻Zは時刻+00:00の糖衣構文だから、09:00Zはありえない。
なんでこうなったかを考えない奴居るんだな
0243Name_Not_Found
垢版 |
2017/04/13(木) 08:58:09.52ID:Hqk5sika
>>242
なんでTにしたん
もっと違う記号あったやろ
アンダーラインとかでもええのに
なんでTにしたん
0245Name_Not_Found
垢版 |
2017/04/13(木) 13:11:41.94ID:???
>>243
SQLでいちいちワイルドカードになったら嫌じゃない?
標準式の方(‐:なし)で時刻だけもらった時に、20時17分で有ることを担保するために、時刻だけには印ついててほしいもわかるし。
日付表記みたいにWとか新しい形が出てこないと限らないから、有意な文字を当てるのは変じゃないと思う
0248Name_Not_Found
垢版 |
2017/04/14(金) 06:35:41.15ID:???
>>242
TimeだからTなんじゃない?
逆にTではまずい理由も特にない
「分かりにくい」って単に慣れの問題だし、Zも終端子としては分かりやすい
英語圏にとってはアルファベットが親しみやすいんだろうよ
慣れろ
0251Name_Not_Found
垢版 |
2017/04/14(金) 16:12:01.12ID:???
教則本を取り組みながら勉強中の超初心者なんですが、
update(メソッド?)というのが何の説明もなく唐突に出てきて、
検索しても出てこないので意味が分かりません。
どういう意味ですか?
0252251
垢版 |
2017/04/14(金) 16:43:19.17ID:???
function push() {
var v = Math.floor(Math.random() * 10);
var r = data.push(v);
update(r);
}

という感じです
0253251
垢版 |
2017/04/14(金) 16:48:08.77ID:???
すみません、解決しました
普通に読み進めていったらupdate関数が定義されていました;
0254Name_Not_Found
垢版 |
2017/04/14(金) 19:09:24.52ID:???
>>253
細かい説明は後からどんどん付け足していくのが英語文化、というのを覚えておくといいかもな
0255Name_Not_Found
垢版 |
2017/04/15(土) 01:26:24.49ID:???
随分と優しい説明だな。
ここは特殊な2ちゃんスレなのだから、もっと屑扱いしてやらんと育たんぞ。
0256Name_Not_Found
垢版 |
2017/04/15(土) 22:13:21.07ID:???
そりゃマサカリもただじゃないからな
投げてやる相手くらいは選ぶさ
0258Name_Not_Found
垢版 |
2017/04/22(土) 03:58:49.81ID:???
学生のとき作った認証関連の某自作ライブラリが10万DLこえたのに驚愕
まあ海外からの評価が異様に高いのが人気に繋がったのか・・
まだ一度も突破テスト等で破られてないみたいのが奇跡
0259Name_Not_Found
垢版 |
2017/04/22(土) 05:10:16.19ID:???
残酷だけどそれは見向きもされてないだけだよ。
0260Name_Not_Found
垢版 |
2017/04/22(土) 09:51:10.62ID:???
自信があるならグーグルやマイクロソフトに売り込んでみよう
結果はここで報告してくれよな
0261Name_Not_Found
垢版 |
2017/04/22(土) 11:24:10.70ID:???
>>258
すげーじゃないか。ここで晒してみてよ。
0262Name_Not_Found
垢版 |
2017/04/22(土) 16:00:03.39ID:EEI8tMJL
minifyとかコンパイルとか一般的になって来てるなら、
もうバイナリにコンパイルしちゃえば?
という気もするのですが、世界がそうならないのは何故ですか?
0263Name_Not_Found
垢版 |
2017/04/22(土) 16:26:04.82ID:???
>>262
重要なのは互換性。
今までのものが今まで通り動くことだから。

バイナリにコンパイルして動かなくなったら
意味はない
0264Name_Not_Found
垢版 |
2017/04/22(土) 17:23:01.66ID:???
それがWebAssemblyじゃないの。
でもあれって直接DOM操作はできないんだっけ
0265Name_Not_Found
垢版 |
2017/04/22(土) 17:30:55.90ID:EEI8tMJL
ま、まあ、コンパイル済のJavaアプレットは残念な出来栄えだったしなあ…
0267Name_Not_Found
垢版 |
2017/04/22(土) 17:56:45.26ID:???
wasmはGCとDOMが実装されてからが本番だな
0268Name_Not_Found
垢版 |
2017/04/25(火) 14:47:19.95ID:???
オブジェクトのディープコピーを簡単にする方法でおすすめ教えて?
0270Name_Not_Found
垢版 |
2017/04/25(火) 22:23:39.55ID:???
jquery.extend() に、deep を指定する
0271Name_Not_Found
垢版 |
2017/04/26(水) 09:22:10.94ID:???
>>269
それだと変数以外の情報全部失われるでしょ

>>270
それだとjqueryじゃない環境で動かないでしょ
0272Name_Not_Found
垢版 |
2017/04/26(水) 10:42:19.52ID:???
もう今更話すことでもないでしょ。この部分は昔から進歩がないんだから。
長年ESコミュニティで提案されているStructure Cloneが実るまではね。

ただこれに近い非同期版がDOM仕様にあるので、非同期で良い場合はMessageChannelを使う
同期が良ければぶっちゃけワンライナーで簡単なのはJSON、
ちょっと手を加えてObject.assignを使えば簡潔な関数を作ることも可能

どれも一長一短があるので好きにしたら良い
0273Name_Not_Found
垢版 |
2017/04/26(水) 15:43:18.54ID:???
DOMからエスケープ前の文字列を取得したいんですが
具体的には©のような文字列です。その場合ってどうすればいいんでしょう
Node.nodeValueだとエスケープ後の文字列になっちゃいます
0276Name_Not_Found
垢版 |
2017/04/26(水) 21:00:49.11ID:???
>>268
> オブジェクトのディープコピーを簡単にする方法でおすすめ教えて?

JavaScript標準でやれないことをやりたくなった時が
ライブラリを導入するべき時だよ

例えばlodashを使う
https://lodash.com/docs/4.17.4#cloneDeep
0277Name_Not_Found
垢版 |
2017/04/26(水) 21:47:59.61ID:???
ライブラリ導入したくないなら必要な部分だけパクってこい
0279Name_Not_Found
垢版 |
2017/04/26(水) 22:04:35.59ID:???
JavaScriptとcssって再利用しにくいよね
ライブラリAがjQuery1.xに依存
ライブラリBがjQuery3.xに依存
でもAB同時に使いたい
とか
名前空間サポート無いせいでjs classやcss classが被ったり
0280Name_Not_Found
垢版 |
2017/04/26(水) 22:10:58.04ID:???
> ライブラリAがjQuery1.xに依存
> ライブラリBがjQuery3.xに依存
> でもAB同時に使いたい

いや、JavaScriptにかぎらず、
それができる言語を知りたいぐらいなんだが?
0281Name_Not_Found
垢版 |
2017/04/26(水) 22:11:56.79ID:???
> 名前空間サポート無いせいでjs classやcss classが被ったり
AngularやReactなんかではscoped cssが使えるから
かぶることもない
0284Name_Not_Found
垢版 |
2017/04/26(水) 23:31:21.17ID:???
>>282
他の言語知らないやつ多すぎだよな。まあ許してやれ。
0285Name_Not_Found
垢版 |
2017/04/27(木) 00:32:11.36ID:???
他の言語知っているのなら、他の言語の例を言うようにw
0286Name_Not_Found
垢版 |
2017/04/27(木) 00:38:51.53ID:???
jsのスレだから勘弁してやれよ
0287Name_Not_Found
垢版 |
2017/04/27(木) 01:19:20.82ID:???
1画面内でバージョンの異なるjQueryを共存させるには
http://rei19.hatenablog.com/entry/2013/03/25/000818

$が、1.9.0 で、$132が、1.3.2

var $132 = $.noConflict(true);

(function($){
// ライブラリ本体のjavascript・・・
})($132)

Underscore.js でも、_ を別名にできる
0288Name_Not_Found
垢版 |
2017/04/27(木) 12:40:23.10ID:Ux3zt1Il
初心者です。テーブルでA1はHTML内で5に指定、A2に<input type ="number" value ="1">があって、A1セルとA2セルを足したい場合
rowsとcellsで指定するとA2がNaNになり結果が5NaNになるんですがどうしたらいいですか?
この場合inputの初期値0は効かないのでしょうか?A2をparseIntで囲ってもだめでした
0289Name_Not_Found
垢版 |
2017/04/27(木) 21:21:10.39ID:???
NAN は、数字ではないって事

ソースコードを書いてから、質問してくれ。
ソースコードが長い場合は、JSFiddle などに貼ってくれ
0290288
垢版 |
2017/04/28(金) 00:00:55.18ID:f58rjsoJ
わかりにくくてすみません。レスありがとうございます
ツールの使い方がわからず、ボタンを押しても反応がないですが、、
個々のファイルにしてブラウザで確認するとgoukei=6になります
最終的にjqueryのblurとかでinputの値が変更されたら該当列全ての値を足して一番下に表示させるのが目標です
https://jsfiddle.net/itioku/Ldvn08jL/
0291Name_Not_Found
垢版 |
2017/04/28(金) 12:19:06.73ID:???
>>280
つーかnpm使ってれば自然にそうなるでしょ?
npmで外部パッケージ化すればいい。
外に公開しなくてもnpm linkすればいい
0292Name_Not_Found
垢版 |
2017/04/28(金) 14:16:55.58ID:???
>>288-290
F12開発者ツールを起動して、1行ずつデバッグするとか、変数をwatchすれば?

それか、あちこちに、console.log() を書いて、どこでおかしくなるのか、変数を見る
0293Name_Not_Found
垢版 |
2017/04/28(金) 20:58:39.94ID:???
>>290
そりゃセルの中に要素作ってるんだから考えてやらないと
値とるだけなら

table.rows[4].cells[4].innerText

table.rows[4].cells[4].firstChild.firstChild.value
でとりあえず取れるけど
0295Name_Not_Found
垢版 |
2017/04/29(土) 02:27:35.54ID:???
出力が全部stringだとわかっている時
改行有りのテキストの出力時に""がつくと微妙に先頭がずれます
"を無くして表示したいのですが可能でしょうか
0296Name_Not_Found
垢版 |
2017/04/29(土) 02:28:15.15ID:???
>>295 訂正
console.logでconsole画面に
を忘れていました
0297295
垢版 |
2017/04/29(土) 02:46:11.41ID:???
よくよく調べたらchromeだと"は付きませんでした
firefoxだと例えば
console.log("あ\nい\nう\nえ\nお");
とすると
"あ



お"
と出力されます
もう諦めてchrome使うことにしますお騒がせしました
0298288
垢版 |
2017/04/29(土) 11:09:15.00ID:/RnRVnWk
>>293
教えていただいた方法で実現できました!ありがとうございました
>そりゃセルの中に要素作ってるんだから考えてやらないと
これからもめっちゃ役に立ちそうです!
0300288
垢版 |
2017/04/29(土) 12:40:57.73ID:/RnRVnWk
>>299
イベントハンドラはHTMLに書いたら動かないって事でしょうか?
今のところはjsfiddleが動かなくて困る事はないですが、心にとめておきます
数値取得方法もそんなやり方もあるのですねありがとうございます!
0301Name_Not_Found
垢版 |
2017/04/30(日) 17:23:39.55ID:???
初心者です
オンクリック属性について教えていただきたいです

//=====================================
var arr =["A","B","C","D","E"];
var element =document.getElementById("testBox");
for(var i=0; i<arr.length; i++)
{
var span =document.createElement("span");
var str = arr[i];
span.onclick= function(){alert(str);};
element.appendChild(span);
span.textContent = arr[i];
}
//=====================================

クリックするとそれぞれの配列の内容が表示されるようにしたいのですが、どれを押しても配列最後の文字列が表示されてしまいます
どこを直したらいいでしょうか
よろしくお願いします
0302Name_Not_Found
垢版 |
2017/04/30(日) 17:28:58.97ID:???
jsでhtmlを生成
オンクリックをforで動的に変更生成させてやってみれ
短く早くかけるぞ
0303301
垢版 |
2017/04/30(日) 17:51:07.41ID:???
>>302
ありがとうございます
軽く検索してみましたが、初心者過ぎて回答の内容が理解できませんでした
せっかくレス下さったのにすみません
回答いただいた内容でもう一回調べてきます
0304301
垢版 |
2017/04/30(日) 18:50:34.20ID:???
>>302
多分教えていただいたこととは違うと思うんですけど、分けたらできました
ありがとうございました
//=====================================
var arr =["A","B","C","D","E"];

var element =document.getElementById("testBox");
for(var i=0; i<arr.length; i++)
{TestFunc(arr[i]);}

function TestFunc(value)
{
var span =document.createElement("span");
span.onclick= function(){alert(value);};
element.appendChild(span);
span.textContent = value;
}
0305Name_Not_Found
垢版 |
2017/04/30(日) 19:07:21.61ID:???
>>304
できたら取りあえずはそれで良しだがその書き方なんとかしろよw

もっと簡潔にすっきり記述できるよう努力しなさい。
0306301
垢版 |
2017/04/30(日) 19:40:26.12ID:???
>>305
はい
もう少しjsの理解が進んだら、記述の簡略化も調べてみます
アドバイスありがとうございました
■ このスレッドは過去ログ倉庫に格納されています

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