私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.121 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
まあこの辺りでさんざん語られたことのコピペかな
+ JavaScript の質問用スレッド vol.117 +
http://peace.2ch.net/test/read.cgi/hp/1403330196/531-
+ JavaScript の質問用スレッド vol.117 +
http://peace.2ch.net/test/read.cgi/hp/1403330196/531-
>>100
なにいってんのjQueryもメインはremoveChildで消してるんだけど
なにいってんのjQueryもメインはremoveChildで消してるんだけど
だいたいベンチ取ればinnerHTMLが猛烈に遅いのは分かることだろ
>>103
> だいたいベンチ取ればinnerHTMLが猛烈に遅いのは分かることだろ
速かったよ。
一見文字列を解釈する必要がある分時間がかかるから
不思議に思えるが、JavaScriptがネイティブでないのが原因。
innerHTMLだと、代入した後は
すべてネイティブで処理されるから早いが、
それと同等なことをネイティブでないJavaScriptでやると
1つずつオーバーヘッドが加わる。
あとさすがにブラウザ、HTMLテキストを解釈するのが仕事だけあって
相当チューニングされてる。
> だいたいベンチ取ればinnerHTMLが猛烈に遅いのは分かることだろ
速かったよ。
一見文字列を解釈する必要がある分時間がかかるから
不思議に思えるが、JavaScriptがネイティブでないのが原因。
innerHTMLだと、代入した後は
すべてネイティブで処理されるから早いが、
それと同等なことをネイティブでないJavaScriptでやると
1つずつオーバーヘッドが加わる。
あとさすがにブラウザ、HTMLテキストを解釈するのが仕事だけあって
相当チューニングされてる。
>>103
遅くなるのは
innerHTML += string
を繰り返す場合だけだと思うが
これは前に挿入されたHTMLの構文解析を重複して繰り返す
ことに他ならない。遅くなるのは当然でベンチマークとして不公平
純粋な意味で innerHTML が劇的に遅いとされるベンチマーク結果はあるの?
遅くなるのは
innerHTML += string
を繰り返す場合だけだと思うが
これは前に挿入されたHTMLの構文解析を重複して繰り返す
ことに他ならない。遅くなるのは当然でベンチマークとして不公平
純粋な意味で innerHTML が劇的に遅いとされるベンチマーク結果はあるの?
初心者がinnerHTMLが1番って結論を出したらそれがこのスレの総意のように扱うな
両者の長所短所を知っている人ならば、どっちか片方だけがいいだなんて言わない
http://jsperf.com/innerhtml-and-appendchild
innerHTMLの方が速い
innerHTMLの方が速い
XSS問題はinnerHTMLが抱える根幹の問題
XSSの発生しない方法があるなら、セキュリティ意識の高い人はinnerHTML以外を選択する
XSSに目をつぶるとしても、textContent, TextNode#data, insertAdjacentHTML に言及されるべきなのだが、既に>101で語り尽くされてる
XSSの発生しない方法があるなら、セキュリティ意識の高い人はinnerHTML以外を選択する
XSSに目をつぶるとしても、textContent, TextNode#data, insertAdjacentHTML に言及されるべきなのだが、既に>101で語り尽くされてる
appendChildがわざわざエスケープしてくれるのに手動でやるのか?
手動ですればいいじゃん
innerHTMLの大きな問題点はXSSじゃない
innerHTMLの大きな問題点はXSSじゃない
innerHTMLの問題はXSS以外にもあるが、既に>>101で議論されたので改めて議論する事もない
>>125
テキストノード操作すればチェックする必要もない
テキストノード操作すればチェックする必要もない
innerHTMLはXSSが問題だと言っている人は、innerHTMLを使ってはいけないっていう主張なの?
jQueryを立てにして逃げんなよ
お前の言葉で反論どうぞチキン
お前の言葉で反論どうぞチキン
jQueryは使わないって言えばいいだけなのに、なんで煽るんだろうね
例えば elm に <p id="a" class="b" style="color:red;">test<b>test</b>test</p> を入れたいと思ったらどうします?
innerHTML なら一行で済みます。十分大きな利点です
このコードも innerHTML を使わずに書くというのなら、私の負けです。毎日仏壇に掲げて尊敬します
innerHTML なら一行で済みます。十分大きな利点です
このコードも innerHTML を使わずに書くというのなら、私の負けです。毎日仏壇に掲げて尊敬します
基本的にjQueryでもinnerHTMLを利用しているAPIは使わない
使わなくて困ったことがない
使わなくて困ったことがない
>>134
> 例えば elm に <p id="a" class="b" style="color:red;">test<b>test</b>test</p> を入れたいと思ったらどうします?
まず、JavaScriptコード内にコンテンツを埋め込むという設計があり得ないから、そういうコードがあるなら設計から見直す
HTML上に用意されているコンテンツをJavaScriptで改変するのが基本
外部コンテンツを利用する場合は XML, CSV, JSON 等の整形フォーマット化されたデータをJavaScriptで取得して一定規則に則った方法でHTML出力する
> 例えば elm に <p id="a" class="b" style="color:red;">test<b>test</b>test</p> を入れたいと思ったらどうします?
まず、JavaScriptコード内にコンテンツを埋め込むという設計があり得ないから、そういうコードがあるなら設計から見直す
HTML上に用意されているコンテンツをJavaScriptで改変するのが基本
外部コンテンツを利用する場合は XML, CSV, JSON 等の整形フォーマット化されたデータをJavaScriptで取得して一定規則に則った方法でHTML出力する
確かに。言われてみればそうですね
innerHTMLを使うこと自体は問題ないけど、そもそも使う機会がないですし、使うような設計は見直すべきですね
大変失礼しました。今から仏壇に掲げてきます
innerHTMLを使うこと自体は問題ないけど、そもそも使う機会がないですし、使うような設計は見直すべきですね
大変失礼しました。今から仏壇に掲げてきます
>>136
>XML, CSV, JSON 等の整形フォーマット化されたデータを
コード内に埋め込むかどうかは別として
HTML 自体も整形フォーマット化されたデータなので
外部から取得したHTMLデータをinnerHTMLで直接的に放り込むことは
ありだと思うよ
>XML, CSV, JSON 等の整形フォーマット化されたデータを
コード内に埋め込むかどうかは別として
HTML 自体も整形フォーマット化されたデータなので
外部から取得したHTMLデータをinnerHTMLで直接的に放り込むことは
ありだと思うよ
>>142
あ、HTML Templatesっていうのは、HTML5のtemplate要素のことね
あ、HTML Templatesっていうのは、HTML5のtemplate要素のことね
また意味もなくinnerHTMLはXSSが起きるって
言ってる奴いるのか?
XSSが起きる条件わかってないだろ。
外部から渡された任意のHTMLを処理するときだけだぞ。
ここまで言えば、まずありえない話だって気づくよな?
反論したいなら、具体的に起きる条件を書いて反論してくれよな。
言ってる奴いるのか?
XSSが起きる条件わかってないだろ。
外部から渡された任意のHTMLを処理するときだけだぞ。
ここまで言えば、まずありえない話だって気づくよな?
反論したいなら、具体的に起きる条件を書いて反論してくれよな。
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.121 + (1001) - [100%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.141 + (881) - [97%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.129 + (926) - [97%] - 2017/7/27 13:45
- + JavaScript の質問用スレッド vol.131 + (1000) - [97%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.120 + (1002) - [97%] - 2014/11/8 1:15
- + JavaScript の質問用スレッド vol.122 + (1004) - [97%] - 2015/2/14 4:45
- + JavaScript の質問用スレッド vol.122 + (116) - [97%] - 2018/5/2 18:30
- + JavaScript の質問用スレッド vol.129 + (981) - [97%] - 2016/5/5 8:16
- + JavaScript の質問用スレッド vol.128 + (1001) - [97%] - 2016/2/26 6:45
- + JavaScript の質問用スレッド vol.131 + (1004) - [97%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.123 + (966) - [97%] - 2020/10/20 2:30
- + JavaScript の質問用スレッド vol.127 + (1001) - [97%] - 2016/2/4 0:15
- + JavaScript の質問用スレッド vol.127 + (160) - [97%] - 2021/7/16 9:30
- + JavaScript の質問用スレッド vol.126 + (952) - [97%] - 2015/11/18 13:15
- + JavaScript の質問用スレッド vol.126 + (348) - [97%] - 2023/1/12 17:00
- + JavaScript の質問用スレッド vol.125 + (1001) - [97%] - 2015/10/7 17:45
- + JavaScript の質問用スレッド vol.123 + (1002) - [97%] - 2015/4/27 23:30
トップメニューへ / →のくす牧場書庫について