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

みんなの評価 :
レスフィルター : (試験中)
const input = [
"2021-03-03T00:00:00+09:00",
"2021-03-04T00:00:00+09:00",
"2021-03-05T00:00:00+09:00",
"2021-03-06T00:00:00+09:00"
]
//1. DateTimeFormat
const formatter = new Intl.DateTimeFormat('jp', {month: 'long' , day: 'numeric'})
input.map(x=>formatter.format(new Date(x)))
//2. Regex
const regex = /¥d{4}-(¥d{2})-(¥d{2})T.*/
const replacer = ($0, $1, $2) => `${Number($1)}月${Number($2)}日`
input.map(x=>x.replace(regex, replacer))
"2021-03-03T00:00:00+09:00",
"2021-03-04T00:00:00+09:00",
"2021-03-05T00:00:00+09:00",
"2021-03-06T00:00:00+09:00"
]
//1. DateTimeFormat
const formatter = new Intl.DateTimeFormat('jp', {month: 'long' , day: 'numeric'})
input.map(x=>formatter.format(new Date(x)))
//2. Regex
const regex = /¥d{4}-(¥d{2})-(¥d{2})T.*/
const replacer = ($0, $1, $2) => `${Number($1)}月${Number($2)}日`
input.map(x=>x.replace(regex, replacer))
Node.js なら、Date 型へ変換できるけど、
環境依存だから、Moment.js とか使うのかな?
ブラウザは、よく知らない
const input = ['2021-03-03T00:00:00+09:00', '2021-03-04T00:00:00+09:00'];
let results = input.map( (str) => new Date(str) );
console.log(results);
出力
[ Wed Mar 03 2021 00:00:00 GMT+0900 (GMT+09:00),
Thu Mar 04 2021 00:00:00 GMT+0900 (GMT+09:00) ]
環境依存だから、Moment.js とか使うのかな?
ブラウザは、よく知らない
const input = ['2021-03-03T00:00:00+09:00', '2021-03-04T00:00:00+09:00'];
let results = input.map( (str) => new Date(str) );
console.log(results);
出力
[ Wed Mar 03 2021 00:00:00 GMT+0900 (GMT+09:00),
Thu Mar 04 2021 00:00:00 GMT+0900 (GMT+09:00) ]
form の name は非推奨になってないんじゃないか?
非推奨になっちゃうとGETで &name=value という形でURLで値が渡せなくなる
namedItem(’id名’) というのが使えるようだ
forms['formName']['childname'].value は、nameの代わりにidを使って
forms.namedItem('formid').elements.namedItem('childId1').value
と書ける
非推奨になっちゃうとGETで &name=value という形でURLで値が渡せなくなる
namedItem(’id名’) というのが使えるようだ
forms['formName']['childname'].value は、nameの代わりにidを使って
forms.namedItem('formid').elements.namedItem('childId1').value
と書ける
ありゃ
forms.namedItem('formid').elements.namedItem('childId1').value
を略して
forms['formid']['childId1'].value
でも行けたぞ
forms.namedItem('formid').elements.namedItem('childId1').value
を略して
forms['formid']['childId1'].value
でも行けたぞ
「非推奨」と「廃止」は違う
「非推奨」とは即ち今はバリバリ使えるということだ
仮に「非推奨」な機能を使ってコンテンツを作り、その直後にメジャーブラウザが廃止を発表したとしても
実際に廃止される前にコンテンツの寿命が尽きる事が殆ど
よって何が一番ダメかというとこの手のことに真剣に考える事自体
「非推奨」とは即ち今はバリバリ使えるということだ
仮に「非推奨」な機能を使ってコンテンツを作り、その直後にメジャーブラウザが廃止を発表したとしても
実際に廃止される前にコンテンツの寿命が尽きる事が殆ど
よって何が一番ダメかというとこの手のことに真剣に考える事自体
ちょっと有り得ない現象に遭遇したのでどうしたらいいか指南お願いします
console.log(a)// -> {hoge:0}
console.log('hoge' in a)// -> true
console.log(a['hoge'])// -> undefined <-!?!?!?
console.log(a)// -> {hoge:0}
オブジェクトそのまま出力したらhogeってプロパティがある
プロパティ名をチェックしてもあると帰ってくる
なのにアクセスしたらundefined
行き詰まった\(^o^)/
データがバイナリ的に壊れてるとかですかねこれ
同じようなケースの経験ある人いますか?
console.log(a)// -> {hoge:0}
console.log('hoge' in a)// -> true
console.log(a['hoge'])// -> undefined <-!?!?!?
console.log(a)// -> {hoge:0}
オブジェクトそのまま出力したらhogeってプロパティがある
プロパティ名をチェックしてもあると帰ってくる
なのにアクセスしたらundefined
行き詰まった\(^o^)/
データがバイナリ的に壊れてるとかですかねこれ
同じようなケースの経験ある人いますか?
そのオブジェクトをどうやって生成したか?
それにどうやって、hoge 属性を追加したか?
それにどうやって、hoge 属性を追加したか?
ajaxでDBから読んだデータをdatatableというライブラリに読ませてる中で発生
属性はajaxで取得した時点で付加されてます
それを弄らずに渡してるだけ
ある特定のデータだけで起こる
この変数をObject.assignでコピーした変数でも同様の現象
DBに格納されてるデータが壊れてるのか?🤔
属性はajaxで取得した時点で付加されてます
それを弄らずに渡してるだけ
ある特定のデータだけで起こる
この変数をObject.assignでコピーした変数でも同様の現象
DBに格納されてるデータが壊れてるのか?🤔
>>564
a.hogeでもアクセス出来ない?
a.hogeでもアクセス出来ない?
出来ないですね
マジで不思議
特定のデータで100%再現するからデータの問題かな
というかそう思いたい
他の言語でもこんなこと起きたことない
javascriptも10年以上世話になってるけどこんなの初めて
マジで不思議
特定のデータで100%再現するからデータの問題かな
というかそう思いたい
他の言語でもこんなこと起きたことない
javascriptも10年以上世話になってるけどこんなの初めて
実際にはプロパティ名は変数に格納されてるのそういう単純なミスではないです
単純でお馬鹿な方法だと、全部分割してから、二番目以降を連結したらどうか?
また、どうでもいい質問
window.requestAnimationFrame() の戻り値の requestId
window.cancelAnimationFrame() に渡すと callback は呼び出されない
こんな仕様があるんで騙されたけど、このリクエストって callback で次のリクエストを自分で呼ばないと駄目なのね
周期的に呼び出し続けるものだと思ってしまった
この仕様って何を考えて作ったんだろ?
呼び出すとは言ったが、(略)十年二十年後ということも!!
window.requestAnimationFrame() の戻り値の requestId
window.cancelAnimationFrame() に渡すと callback は呼び出されない
こんな仕様があるんで騙されたけど、このリクエストって callback で次のリクエストを自分で呼ばないと駄目なのね
周期的に呼び出し続けるものだと思ってしまった
この仕様って何を考えて作ったんだろ?
呼び出すとは言ったが、(略)十年二十年後ということも!!
Ruby では、
str = "a@b@c@d";
# 左からコロンで、2つに分割する。最大分割数・limit は2
p ary = str.split( '@', 2 )
出力
["a", "b@c@d"]
Lo-dash には、無いの?
str = "a@b@c@d";
# 左からコロンで、2つに分割する。最大分割数・limit は2
p ary = str.split( '@', 2 )
出力
["a", "b@c@d"]
Lo-dash には、無いの?
const str = '';
const pos = str.indexOf('@');
let ary = [ ];
if (pos >= 0) {
ary = [str.substr(0, pos), str.substr(pos + 1)];
}
console.log( pos, ary )
出力
-1, [ ]
const pos = str.indexOf('@');
let ary = [ ];
if (pos >= 0) {
ary = [str.substr(0, pos), str.substr(pos + 1)];
}
console.log( pos, ary )
出力
-1, [ ]
横にそれるがsliceじゃなくsubstr使う派って何を意図してるの?
webページの操作をjavascriptを使ってカスタマイズしたい
たとえば複数のページに分けられている文章を一度に読み込んで表示したりしたい
具体的にはローカルファイルでhtmlファイルを作ってその中でiframe内に他人が作った
web ページを表示させてその中身をjavasccripで操作したいんだけど、
こういうのはクロスオリジン要求ってことで基本的にだめだよね
でもそんなにマズいことか?と考えてみれば、ユーザが自分で知った上でやる分には危険はないはずだし、
「開発者用ツール」を使えば他人の作ったwebページの表示を変えることだって出来る
(htmlファイルののコピーはローカルにコピーされてるから)んだからそういうのをJavascriptで出来てもいいんじゃないの?と思う
できない?
selenium IDE とか言う、web 操作を自動化するツールがあるのは知ってる
そういうの使うしかない?
たとえば複数のページに分けられている文章を一度に読み込んで表示したりしたい
具体的にはローカルファイルでhtmlファイルを作ってその中でiframe内に他人が作った
web ページを表示させてその中身をjavasccripで操作したいんだけど、
こういうのはクロスオリジン要求ってことで基本的にだめだよね
でもそんなにマズいことか?と考えてみれば、ユーザが自分で知った上でやる分には危険はないはずだし、
「開発者用ツール」を使えば他人の作ったwebページの表示を変えることだって出来る
(htmlファイルののコピーはローカルにコピーされてるから)んだからそういうのをJavascriptで出来てもいいんじゃないの?と思う
できない?
selenium IDE とか言う、web 操作を自動化するツールがあるのは知ってる
そういうの使うしかない?
>>592
そんなにマズいことだからだよ
任意のサイトをフレームに読み込んでJavaScriptから操作させたとする
それは相手のページに自由にスクリプトを埋め込むことと同じ
つまりは歴としたCSRFだから、ハマチちゃん大増殖
そんなにマズいことだからだよ
任意のサイトをフレームに読み込んでJavaScriptから操作させたとする
それは相手のページに自由にスクリプトを埋め込むことと同じ
つまりは歴としたCSRFだから、ハマチちゃん大増殖
>>594
それは偽サイトが作りやすくなるからダメってこと?
偽サイト作るなら別にそれなくても出来るよね
HTMLの中身全部コピーしてその偽サイトに置いちゃえばいいから
それやらないで、1枚HTMLの皮かぶせるだけで被害者を騙せるようになる?
ただ、そのHTMLの皮だってそれなりのURLのとこに置かないと騙せない気がするが
それは偽サイトが作りやすくなるからダメってこと?
偽サイト作るなら別にそれなくても出来るよね
HTMLの中身全部コピーしてその偽サイトに置いちゃえばいいから
それやらないで、1枚HTMLの皮かぶせるだけで被害者を騙せるようになる?
ただ、そのHTMLの皮だってそれなりのURLのとこに置かないと騙せない気がするが
>>595
うん
HTMLは一旦ローカルにコピーされてから表示されるわけで、同じオリジンのHTMLのコピーはjavascriptで好きに改変できるんだから、
iframe で表示するためにローカルにコピーしたHTMLだって好きに改変させてよ、と思う
開発者用ツールでは出来るんだし
うん
HTMLは一旦ローカルにコピーされてから表示されるわけで、同じオリジンのHTMLのコピーはjavascriptで好きに改変できるんだから、
iframe で表示するためにローカルにコピーしたHTMLだって好きに改変させてよ、と思う
開発者用ツールでは出来るんだし
>>596
違う
もちろん自前で使うならば問題はない
しかし万が一そんなものが出回った場合に、製作者の責任とか難癖つけられて、とっても非難されるのは目に見えてる
だから、誰もそんなものは作ったとしても公開とかしない
具体的な攻撃シナリオを提示
ページに「視認できないサイズのiFrame」でアマゾンを開いておく
大体の人はログインしっぱなしだろう
そして iFrame の JavaScript を操作して、とにかく注文しまくる
違う
もちろん自前で使うならば問題はない
しかし万が一そんなものが出回った場合に、製作者の責任とか難癖つけられて、とっても非難されるのは目に見えてる
だから、誰もそんなものは作ったとしても公開とかしない
具体的な攻撃シナリオを提示
ページに「視認できないサイズのiFrame」でアマゾンを開いておく
大体の人はログインしっぱなしだろう
そして iFrame の JavaScript を操作して、とにかく注文しまくる



類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.141 + (1001) - [100%] - 2019/9/22 23:15
- + JavaScript の質問用スレッド vol.142 + (984) - [97%] - 2020/8/27 19:15
- + JavaScript の質問用スレッド vol.131 + (1004) - [97%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.121 + (1001) - [97%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.121 + (1001) - [97%] - 2022/11/29 16:30
- + JavaScript の質問用スレッド vol.131 + (1000) - [97%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.144 + (288) - [97%] - 2020/5/17 20:00
- + JavaScript の質問用スレッド vol.111 + (1001) - [97%] - 2013/11/4 6:00
- + JavaScript の質問用スレッド vol.142 + (926) - [97%] - 2019/12/23 13:15
- + JavaScript の質問用スレッド vol.143 + (753) - [97%] - 2020/4/19 5:00
- + JavaScript の質問用スレッド vol.101 + (1001) - [97%] - 2012/7/16 14:15
- + JavaScript の質問用スレッド vol.140 + (1001) - [97%] - 2019/9/19 10:45
- + JavaScript の質問用スレッド vol.102 + (1001) - [95%] - 2012/9/11 17:30
- + JavaScript の質問用スレッド vol.123 + (966) - [95%] - 2020/10/20 2:30
- + JavaScript の質問用スレッド vol.122 + (116) - [95%] - 2018/5/2 18:30
- + JavaScript の質問用スレッド vol.122 + (1004) - [95%] - 2015/2/14 4:45
- + JavaScript の質問用スレッド vol.100 + (1001) - [95%] - 2012/6/13 22:46
トップメニューへ / →のくす牧場書庫について