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です)
探検
+ JavaScript の質問用スレッド vol.126 +
レス数が900を超えています。1000を超えると表示できなくなるよ。
2018/06/02(土) 14:31:23.04ID:B1JKBGEy
839デフォルトの名無しさん
2019/01/13(日) 10:14:09.92ID:/M42Y9uV HTML/CSS/JSのセットを学ぶことは無駄にはならんよ。
今後のGUIの主流になりつつあるから。
ただ、ゲームを作りたいだけならオーバースペックだ、というだけで。
今後のGUIの主流になりつつあるから。
ただ、ゲームを作りたいだけならオーバースペックだ、というだけで。
840デフォルトの名無しさん
2019/01/13(日) 10:32:25.08ID:/M42Y9uV あとその手の「初心者でも子供でも簡単に出来る」って奴は大概すぐポシャるので俺は勧めないね。
scratchが一時期言われてたけど、今全く聞かないでしょ。
何故プロがそれらを使わないのかを理解出来ないうちは、所詮その程度って事だよ。
専門学校はプロ養成予備校みたいな位置づけだし、今ならHTML/CSS/JavaScriptで妥当だ。
当人は「学ばないと出来ない」という感覚なのか、出来ない理由を探しているから、
そうではなく、出来るところから始めろ、というだけ。
JavaScriptはコミュニティが腐っているが、言語としてはまあまあだよ。
そこで上達出来るかは本人次第だ。
とはいえ、初心者だと雑音を雑音と認識することも難しいから、難儀な話ではあるが。
scratchが一時期言われてたけど、今全く聞かないでしょ。
何故プロがそれらを使わないのかを理解出来ないうちは、所詮その程度って事だよ。
専門学校はプロ養成予備校みたいな位置づけだし、今ならHTML/CSS/JavaScriptで妥当だ。
当人は「学ばないと出来ない」という感覚なのか、出来ない理由を探しているから、
そうではなく、出来るところから始めろ、というだけ。
JavaScriptはコミュニティが腐っているが、言語としてはまあまあだよ。
そこで上達出来るかは本人次第だ。
とはいえ、初心者だと雑音を雑音と認識することも難しいから、難儀な話ではあるが。
841デフォルトの名無しさん
2019/01/14(月) 14:10:49.06ID:qAC/hIw5 このスレはじめてきたけど、上の方でjQueryをやたら推してる人って頭おかしいの?
842デフォルトの名無しさん
2019/01/14(月) 14:47:13.30ID:WA0+I2lc jQuery推しがおかしいかおかしくないかはどうでも良くて
それに論理的に反論できないならば、言ってることは正しいってことさ
それに論理的に反論できないならば、言ってることは正しいってことさ
843デフォルトの名無しさん
2019/01/14(月) 14:50:15.30ID:qAC/hIw5 えっ、jQueryおじさんが反論を理解できていないだけじゃないの?
844デフォルトの名無しさん
2019/01/14(月) 15:20:39.58ID:WA0+I2lc それは違うな。
845デフォルトの名無しさん
2019/01/14(月) 16:57:53.59ID:MmdBprG3 >>843
そうだよ
そうだよ
846デフォルトの名無しさん
2019/01/14(月) 17:36:34.87ID:WA0+I2lc jQueryのシェアがまた伸びてた。73.7%。5ヶ月連続で毎月0.1%増えてる。
0.1%増加なんて僅かだと思うかもしれないが、
Reactの現在のシェア(増加ではない)が0.2%、Vueが0.2%、Angularが0.4%
https://w3techs.com/technologies/history_overview/javascript_library/all
0.1%増加なんて僅かだと思うかもしれないが、
Reactの現在のシェア(増加ではない)が0.2%、Vueが0.2%、Angularが0.4%
https://w3techs.com/technologies/history_overview/javascript_library/all
847デフォルトの名無しさん
2019/01/14(月) 18:16:36.57ID:ft32dWPM848デフォルトの名無しさん
2019/01/14(月) 21:49:08.71ID:E+94DXGY shadow-root(attachShadow)って何ができるの?
ふつーに要素を作るんじゃなくて使うってことは何かできることがあると思って
ふつーに要素を作るんじゃなくて使うってことは何かできることがあると思って
849デフォルトの名無しさん
2019/01/15(火) 19:19:49.80ID:Mzm8zFRT jQuery使わない人の声だけがでかいのはわかる
javascriptフレームワークなんて誰も使ってない
javascriptフレームワークなんて誰も使ってない
850デフォルトの名無しさん
2019/01/15(火) 19:25:43.57ID:URfldHzA 声がでかいのはjQueryバカだが。
851デフォルトの名無しさん
2019/01/15(火) 20:18:42.32ID:XcHWZlYr jQuery厨は結局「jQueryは不滅です」と言い張るだけだから議論する意味はない。
実際はじきに結論がでるから待てばいい。
予想するなら、version3に上げている連中(6.4%)は今後とも使う気なのだと思う。
今だにversion1を使っている(=バージョンを上げてまで使う気はない)のが大半(85.7%)で、
つまり大半は様子見中で、だからこそこの話に食いつく奴が多い。
https://w3techs.com/technologies/details/js-jquery/all/all
このサイトのシェアはサイト数で算出しているから、
どうしてもvue等の「アプリ」用フレームワークは低く出る。
とはいえ、それを勘案しても実際に低いのも事実だが。
https://w3techs.com/technologies/topsite/javascript_library
実際はじきに結論がでるから待てばいい。
予想するなら、version3に上げている連中(6.4%)は今後とも使う気なのだと思う。
今だにversion1を使っている(=バージョンを上げてまで使う気はない)のが大半(85.7%)で、
つまり大半は様子見中で、だからこそこの話に食いつく奴が多い。
https://w3techs.com/technologies/details/js-jquery/all/all
このサイトのシェアはサイト数で算出しているから、
どうしてもvue等の「アプリ」用フレームワークは低く出る。
とはいえ、それを勘案しても実際に低いのも事実だが。
https://w3techs.com/technologies/topsite/javascript_library
852デフォルトの名無しさん
2019/01/15(火) 20:21:33.86ID:JZTSzU8d > 実際はじきに結論がでるから待てばいい。
いつでるんだよ・・・もう3年経ってるぞ
いつでるんだよ・・・もう3年経ってるぞ
853デフォルトの名無しさん
2019/01/15(火) 20:33:42.53ID:XcHWZlYr854デフォルトの名無しさん
2019/01/15(火) 20:40:39.71ID:JZTSzU8d シェアを気にしてるんじゃないんだよ。合理的な判断から。
ウェブの大半を占めるウェブサイトを作ってるのはウェブデザイナーが大半で
ウェブアプリを開発してるのはごく一部。そんなところにプログラミングが主である
React、Angular、Vueが普及するわけもなく、殆どは軽い使い方しかしてないんだから
jQueryで必要十分だってこと
シェアは単にそれを証明している指標に過ぎない
ウェブの大半を占めるウェブサイトを作ってるのはウェブデザイナーが大半で
ウェブアプリを開発してるのはごく一部。そんなところにプログラミングが主である
React、Angular、Vueが普及するわけもなく、殆どは軽い使い方しかしてないんだから
jQueryで必要十分だってこと
シェアは単にそれを証明している指標に過ぎない
855デフォルトの名無しさん
2019/01/15(火) 21:23:45.38ID:o/u10+7j これからはBackboneや!
これからはEmberや!
これからはKnockoutや!
これからはAngular1や!
フレームワーク使ってるほうが死亡してるんだけどな
これからはEmberや!
これからはKnockoutや!
これからはAngular1や!
フレームワーク使ってるほうが死亡してるんだけどな
856デフォルトの名無しさん
2019/01/15(火) 21:26:47.44ID:XcHWZlYr >>854
サイト数で言えば「ドキュメント」が多いだけで、
トラフィックの大半は「アプリ」ないしはニュースサイト等の「軽量アプリ+DB」だよ。
つかそれ前にも言ったけど、お前普段どんなサイトを見てるんだよまじで。
とりあえず単純に定義しておくと、以下な。
アプリ: ajaxやPOST使いまくり
軽量アプリ: POST機能はあるが主ではない
ドキュメント: ajaxやPOSTは全くない
サイト数で言えば「ドキュメント」が多いだけで、
トラフィックの大半は「アプリ」ないしはニュースサイト等の「軽量アプリ+DB」だよ。
つかそれ前にも言ったけど、お前普段どんなサイトを見てるんだよまじで。
とりあえず単純に定義しておくと、以下な。
アプリ: ajaxやPOST使いまくり
軽量アプリ: POST機能はあるが主ではない
ドキュメント: ajaxやPOSTは全くない
857デフォルトの名無しさん
2019/01/15(火) 21:31:34.93ID:+Q2URMA7 >>856
そんな定義初めて見たわ
そんな定義初めて見たわ
858デフォルトの名無しさん
2019/01/15(火) 21:31:43.02ID:o/u10+7j トラフィックの大半は映像、JavaScript関係ないがな
世界のインターネットトラフィックの過半数を「映像視聴」が占めている
https://gigazine.net/news/20181003-global-internet-downstream/
世界のインターネットトラフィックの過半数を「映像視聴」が占めている
https://gigazine.net/news/20181003-global-internet-downstream/
859デフォルトの名無しさん
2019/01/15(火) 21:41:47.16ID:XcHWZlYr >>858
ああ、まあそりゃそうだ。
ただ、その手のサイトは普通「アプリ」だと思うぞ。
が、まあ、それなら、ダウンストリームを除いて、アップトラフィック、で測るべきだな。
回線速度サイト等で言う、「上り回線」内のトラフィック数だ。
(映像視聴中もping的なアップトラフィックがあるのは知っているが、それらは除いて)
ああ、まあそりゃそうだ。
ただ、その手のサイトは普通「アプリ」だと思うぞ。
が、まあ、それなら、ダウンストリームを除いて、アップトラフィック、で測るべきだな。
回線速度サイト等で言う、「上り回線」内のトラフィック数だ。
(映像視聴中もping的なアップトラフィックがあるのは知っているが、それらは除いて)
860デフォルトの名無しさん
2019/01/15(火) 21:48:27.78ID:XcHWZlYr861デフォルトの名無しさん
2019/01/15(火) 21:49:57.09ID:o/u10+7j >>859
連想ゲームやってるんじゃねーんだ
トラフィックが多いのは映像
映像はアプリ
アプリはJavaScriptを使ってる
だからトラフィックが多いのはJavaScript
違うからな。
ゲームで考えてみろ。多いのはデータであって
プログラムじゃねぇ
連想ゲームやってるんじゃねーんだ
トラフィックが多いのは映像
映像はアプリ
アプリはJavaScriptを使ってる
だからトラフィックが多いのはJavaScript
違うからな。
ゲームで考えてみろ。多いのはデータであって
プログラムじゃねぇ
862デフォルトの名無しさん
2019/01/15(火) 21:56:31.56ID:XcHWZlYr863デフォルトの名無しさん
2019/01/15(火) 22:31:29.43ID:Jm3tkwyg LayeredAPI使って帯域節約していきましょうってことでしょ
864デフォルトの名無しさん
2019/01/15(火) 22:56:55.97ID:panAyOn8865デフォルトの名無しさん
2019/01/15(火) 23:01:45.06ID:+Q2URMA7 >>860
オレオレ定義で妄想おつ
オレオレ定義で妄想おつ
866デフォルトの名無しさん
2019/01/16(水) 06:46:16.07ID:2Lqji3T2 な? >>864のように声だけデカイんだよ
867デフォルトの名無しさん
2019/01/19(土) 03:47:07.72ID:pxg53bXv list.map(x => new Hoge(x))
これを
list.map(Hoge)
みたいに書きたいんですが出来ませんか?
staticでファクトリーメソッド実装するしかない?
これを
list.map(Hoge)
みたいに書きたいんですが出来ませんか?
staticでファクトリーメソッド実装するしかない?
868デフォルトの名無しさん
2019/01/19(土) 06:14:08.63ID:xhDg2W2P >>867
const Hoge = class {
constructor(a) {
this.a = a;
}
}
const hogeProxy = new Proxy(Hoge, {
get: (target, key) => key === target.name ? x => new target(x) : target[key],
has: (target, key) => (key in target || key === target.name) ? true : false,
})
with (hogeProxy) {
console.log([1, 2, 3].map(Hoge));
}
//=> [Hoge {a: 1}, Hoge {a: 2}, Hoge {a: 3}]
const Hoge = class {
constructor(a) {
this.a = a;
}
}
const hogeProxy = new Proxy(Hoge, {
get: (target, key) => key === target.name ? x => new target(x) : target[key],
has: (target, key) => (key in target || key === target.name) ? true : false,
})
with (hogeProxy) {
console.log([1, 2, 3].map(Hoge));
}
//=> [Hoge {a: 1}, Hoge {a: 2}, Hoge {a: 3}]
869デフォルトの名無しさん
2019/01/19(土) 08:42:38.70ID:NKRnmbDh >>867
class Hoge {
constructor(x) {
this.x = x;
}
}
function foo(Hoge) {
list.map(Hoge);
}
foo(x => new Hoge(x))
class Hoge {
constructor(x) {
this.x = x;
}
}
function foo(Hoge) {
list.map(Hoge);
}
foo(x => new Hoge(x))
870デフォルトの名無しさん
2019/01/19(土) 10:11:49.19ID:61MkY90x871デフォルトの名無しさん
2019/01/19(土) 15:43:36.73ID:wiNfQeeu Ruby では、: で始まるシンボルで、メソッド名を渡すことで、インスタンスメソッドを呼べる
# 数値に変換してから、配列内のすべての数字を足す
puts numbers.map(&:to_i).inject(:+)
# 数値に変換してから、配列内のすべての数字を足す
puts numbers.map(&:to_i).inject(:+)
872デフォルトの名無しさん
2019/01/19(土) 15:58:41.16ID:xhDg2W2P 655 デフォルトの名無しさん sage 2018/10/15(月) 05:44:32.10 ID:5+V16LLD
>>649
メソッドにしておくと select(&::positive?) と書けるという理由だった気がする
657 デフォルトの名無しさん 2018/10/15(月) 09:25:55.90 ID:/ogVl406
>>655
きったねえ文法だなぁw
美しい(笑)
疑似コードがそのまま動く(笑)
&::とかの意味不明な疑似コードがどこにあるってんだよwww
658 デフォルトの名無しさん sage 2018/10/15(月) 10:09:06.69 ID:r7U1tD/N
擬似コードがそのまま動くのはPythonじゃね
関数型言語なら演算子がそのまま第一級関数であることとカリー化を使って data |> select ((>) 0) みたいに書けたりするね
ガチ関数型でなくてもまともなラムダがある言語なら select(x => x > 0) と遥かに見通し良く書ける
Rubyの &:: は極めて驚きが大きく醜悪な機能の一つだね
>>649
メソッドにしておくと select(&::positive?) と書けるという理由だった気がする
657 デフォルトの名無しさん 2018/10/15(月) 09:25:55.90 ID:/ogVl406
>>655
きったねえ文法だなぁw
美しい(笑)
疑似コードがそのまま動く(笑)
&::とかの意味不明な疑似コードがどこにあるってんだよwww
658 デフォルトの名無しさん sage 2018/10/15(月) 10:09:06.69 ID:r7U1tD/N
擬似コードがそのまま動くのはPythonじゃね
関数型言語なら演算子がそのまま第一級関数であることとカリー化を使って data |> select ((>) 0) みたいに書けたりするね
ガチ関数型でなくてもまともなラムダがある言語なら select(x => x > 0) と遥かに見通し良く書ける
Rubyの &:: は極めて驚きが大きく醜悪な機能の一つだね
873デフォルトの名無しさん
2019/01/19(土) 16:23:10.62ID:NKRnmbDh >>871
> Ruby では、: で始まるシンボルで、メソッド名を渡すことで、インスタンスメソッドを呼べる
シンボルってただの文字列と変わらないからね
定義しなくて使えるから、タイポしてもエラーになるわけじゃないし
> Ruby では、: で始まるシンボルで、メソッド名を渡すことで、インスタンスメソッドを呼べる
シンボルってただの文字列と変わらないからね
定義しなくて使えるから、タイポしてもエラーになるわけじゃないし
874デフォルトの名無しさん
2019/01/19(土) 16:34:18.49ID:TO8T1N5e >>867ですがいろいろとありがとうございます。
list.map(Number)ができるならlist.map(Hoge)もできるんじゃないかと思ったのですが、一筋縄では行かないようですね
おうちゃくせずに素直に仮引数つけます
list.map(Number)ができるならlist.map(Hoge)もできるんじゃないかと思ったのですが、一筋縄では行かないようですね
おうちゃくせずに素直に仮引数つけます
875デフォルトの名無しさん
2019/01/19(土) 16:57:46.13ID:TeWxng+0 昔はコンストラクタがただの関数だったから、class構文にしなきゃできるな
es5にトランスパイルすればいける
es5にトランスパイルすればいける
876デフォルトの名無しさん
2019/01/19(土) 17:01:01.38ID:ukgk9vnp >>875
なるほどね。何のこっちゃと思ったがそういうことか。
なるほどね。何のこっちゃと思ったがそういうことか。
877デフォルトの名無しさん
2019/01/19(土) 17:17:55.46ID:SwmccsG2 コンパイラエラー C2872 あいまいなシンボルです。
コンパイルエラーが解消出来ません。
ご教授下さい。
■コンパイルエラー内容
error C2872: 'MarketplaceWebServiceProducts' : あいまいなシンボルです
■やりたいこと
AmazonのAPI「Marketplace Web Service API (MWS)」のHello world
以下ページの右上 オレンジ色の「Download」ボタンから入手できる
「MWSProducts_2011-10-01_v2017-03-22.dll」の使用
https://developer.amazonservices.jp/doc/products/products/v20111001/cSharp.html
■DLLの使用
Visual Studioの対象プロジェクトのプロパティから、
上記DLLの参照を追加しました
■コーディング
using namespace MarketplaceWebServiceProducts;//←ここはコンパイルOK
using namespace MarketplaceWebServiceProducts::Mock;//←★ここで上記コンパイルエラー
■ご質問
上位の「MarketplaceWebServiceProducts」が正常なのに、
下位の「Mock」を付けるとあいまいなシンボルになるのはなぜでしょうか。
解決策をご教授ください。(可能であれば実装をご提供ください)
■環境
Visual Studio
.Net 4.0
C++/Cli
コンパイルエラーが解消出来ません。
ご教授下さい。
■コンパイルエラー内容
error C2872: 'MarketplaceWebServiceProducts' : あいまいなシンボルです
■やりたいこと
AmazonのAPI「Marketplace Web Service API (MWS)」のHello world
以下ページの右上 オレンジ色の「Download」ボタンから入手できる
「MWSProducts_2011-10-01_v2017-03-22.dll」の使用
https://developer.amazonservices.jp/doc/products/products/v20111001/cSharp.html
■DLLの使用
Visual Studioの対象プロジェクトのプロパティから、
上記DLLの参照を追加しました
■コーディング
using namespace MarketplaceWebServiceProducts;//←ここはコンパイルOK
using namespace MarketplaceWebServiceProducts::Mock;//←★ここで上記コンパイルエラー
■ご質問
上位の「MarketplaceWebServiceProducts」が正常なのに、
下位の「Mock」を付けるとあいまいなシンボルになるのはなぜでしょうか。
解決策をご教授ください。(可能であれば実装をご提供ください)
■環境
Visual Studio
.Net 4.0
C++/Cli
878デフォルトの名無しさん
2019/01/19(土) 17:43:38.99ID:TqFwYkHH スレタイ音読
879デフォルトの名無しさん
2019/01/19(土) 18:28:01.65ID:wiNfQeeu >本当にありがとうございます!!!!!!!!!!!!
>キモヲタ万歳!!!!!!キモヲタ役に立つ!!!!!!!!
この質問者は、荒らしだから、無視しろ!
>キモヲタ万歳!!!!!!キモヲタ役に立つ!!!!!!!!
この質問者は、荒らしだから、無視しろ!
880デフォルトの名無しさん
2019/01/19(土) 19:13:31.85ID:42e10N7I881デフォルトの名無しさん
2019/01/19(土) 19:25:13.47ID:ZDGn0g7S だから場合分けするんだよ
882デフォルトの名無しさん
2019/01/19(土) 19:30:47.77ID:42e10N7I Hogeの方で工夫するのならスタティックメソッドを生やすのとえっと変わらんじゃん
もしくはHoge.aryFrom(list) みたいなの用意してもいいんだし
もしくはHoge.aryFrom(list) みたいなの用意してもいいんだし
883デフォルトの名無しさん
2019/01/19(土) 19:33:39.03ID:NKRnmbDh はは、Rubyじゃあるまいし、カッコつけないと
関数呼び出しにならないのに、どうやって場合分けするっていうんだ
はは
関数呼び出しにならないのに、どうやって場合分けするっていうんだ
はは
884デフォルトの名無しさん
2019/01/19(土) 19:39:24.01ID:ZDGn0g7S886デフォルトの名無しさん
2019/01/20(日) 00:27:30.68ID:40HwJ7d/ > list.map(x => new Hoge(x))
> これを
> list.map(Hoge)
> みたいに書きたいんですが出来ませんか?
Hogeのどこが関数なの?
関数っていうのはHoge()ってやらないといけないんだよ?
ほんとうに情けないんわ
> これを
> list.map(Hoge)
> みたいに書きたいんですが出来ませんか?
Hogeのどこが関数なの?
関数っていうのはHoge()ってやらないといけないんだよ?
ほんとうに情けないんわ
887デフォルトの名無しさん
2019/01/20(日) 00:37:29.30ID:62lK6b9v const double = n => n * 2;
[1, 2, 3].map(double);
//=> [2, 4, 6]
ワロタwww
>>886によるとこのdoubleは関数じゃないらしいw
double(1)みたいな呼び出しじゃないからだってwwwww
[1, 2, 3].map(double);
//=> [2, 4, 6]
ワロタwww
>>886によるとこのdoubleは関数じゃないらしいw
double(1)みたいな呼び出しじゃないからだってwwwww
888デフォルトの名無しさん
2019/01/20(日) 00:42:24.82ID:62lK6b9v class Hoge {
constructor(x) {
this.x = x;
}
}
console.log(typeof Hoge);
//=> function
> Hogeのどこが関数なの?
wwwww
constructor(x) {
this.x = x;
}
}
console.log(typeof Hoge);
//=> function
> Hogeのどこが関数なの?
wwwww
889デフォルトの名無しさん
2019/01/20(日) 01:16:35.87ID:U54SgNBZ >>888
お前はこの意味がわかってないんだな
> 関数形式で呼ばれたか、コンストラクタとして呼ばれたかで分けるってことだよ
list.map(Hoge) のHogeは
関数形式で呼ばれたか、コンストラクタとして呼ばれたか
どっちか言ってみ
お前はこの意味がわかってないんだな
> 関数形式で呼ばれたか、コンストラクタとして呼ばれたかで分けるってことだよ
list.map(Hoge) のHogeは
関数形式で呼ばれたか、コンストラクタとして呼ばれたか
どっちか言ってみ
890デフォルトの名無しさん
2019/01/20(日) 01:58:00.54ID:62lK6b9v そんな雑魚レス見てないし関係ない。
> 関数っていうのはHoge()ってやらないといけないんだよ?
これは恥ずかしい誤りwww
反例
[1, 2, 3].forEach(console.log)
> 関数っていうのはHoge()ってやらないといけないんだよ?
これは恥ずかしい誤りwww
反例
[1, 2, 3].forEach(console.log)
891デフォルトの名無しさん
2019/01/20(日) 05:48:06.80ID:y/Svh0b0 spanやdivのクリックイベントを、buttonと同じ要素に出来ないでしょうか?
コンソールでイベントを確認すると、currentTargetが
divはHTMLParagraphElementで、buttonはHTMLButtonElementになっています。
CSSでdivタグをボタン風にしていることもあるので、
Javascript上でもボタン扱いしたいのですが、書き方次第で変更できるのでしょうか?
コンソールでイベントを確認すると、currentTargetが
divはHTMLParagraphElementで、buttonはHTMLButtonElementになっています。
CSSでdivタグをボタン風にしていることもあるので、
Javascript上でもボタン扱いしたいのですが、書き方次第で変更できるのでしょうか?
892デフォルトの名無しさん
2019/01/20(日) 07:49:29.85ID:U54SgNBZ >>890
なんだ?お前重箱の隅ばかりついて、
関数形式で呼ばれたか、コンストラクタとして呼ばれたかで分けても
元の質問者の希望である
list.map(Hoge) とはかけないってことに
まだ気づいてないのか?
なんだ?お前重箱の隅ばかりついて、
関数形式で呼ばれたか、コンストラクタとして呼ばれたかで分けても
元の質問者の希望である
list.map(Hoge) とはかけないってことに
まだ気づいてないのか?
893デフォルトの名無しさん
2019/01/20(日) 07:51:00.80ID:U54SgNBZ894デフォルトの名無しさん
2019/01/20(日) 09:12:39.85ID:fBsdchbe895デフォルトの名無しさん
2019/01/20(日) 10:08:42.25ID:U54SgNBZ >>891
> CSSでdivタグをボタン風にしていることもあるので、
> Javascript上でもボタン扱いしたいのですが、書き方次第で変更できるのでしょうか?
そもそもdivタグをボタンにするのが間違い。
そこにクリックできるボタンがあるのなら、ボタンで作るのが正しい
見た目はCSSで変える。何がほしいか?ボタンがほしいならボタンを使う。それだけのこと
> CSSでdivタグをボタン風にしていることもあるので、
> Javascript上でもボタン扱いしたいのですが、書き方次第で変更できるのでしょうか?
そもそもdivタグをボタンにするのが間違い。
そこにクリックできるボタンがあるのなら、ボタンで作るのが正しい
見た目はCSSで変える。何がほしいか?ボタンがほしいならボタンを使う。それだけのこと
896デフォルトの名無しさん
2019/01/20(日) 10:15:54.36ID:z7e/RJqb897デフォルトの名無しさん
2019/01/20(日) 12:26:13.71ID:CrxCXx63 >>896
ボタンにa要素はお勧めしない
ボタンにa要素はお勧めしない
898デフォルトの名無しさん
2019/01/20(日) 15:35:58.63ID:pkTQkmr2 >divはHTMLParagraphElementで、buttonはHTMLButtonElementになっています
多分どちらも、HTMLElement から派生したクラスじゃないの?
Vue.js では、ルーター用のリンクを、<a> タグ以外にも変えられる
<router-link to="/foo" tag="li">foo</router-link>
<!-- 以下のように描画されます -->
<li>foo</li>
tag="button" で、ボタンにもできる
多分どちらも、HTMLElement から派生したクラスじゃないの?
Vue.js では、ルーター用のリンクを、<a> タグ以外にも変えられる
<router-link to="/foo" tag="li">foo</router-link>
<!-- 以下のように描画されます -->
<li>foo</li>
tag="button" で、ボタンにもできる
899デフォルトの名無しさん
2019/01/20(日) 23:43:12.79ID:y/Svh0b0 >>893-894
そういうことではなく、divをクリックしたら
Javascript的に「これはボタン要素です」って認識させたいんです。
>>895-896
確かにそうなんですが、UIとかボタンじゃないほうが良い場合が多々あるんです。
でもデザイン的にボタン風が良いので、spanやdivで代用します。(よく利用されています
<a href="javascript::void(0);" class="button">ボタン</a>で、a要素をボタンにもできますが、
aは使いにくいんですよね。やっぱりデザイン的に使いたいだけなんで、spanかdivなんです。
>>898
Vue.jsは知りませんが、イメージとしてはそういうことがしたいです。
HTML5とかJavascriptとかjQueryとかで可能なら一番なのですが・・・
そういうことではなく、divをクリックしたら
Javascript的に「これはボタン要素です」って認識させたいんです。
>>895-896
確かにそうなんですが、UIとかボタンじゃないほうが良い場合が多々あるんです。
でもデザイン的にボタン風が良いので、spanやdivで代用します。(よく利用されています
<a href="javascript::void(0);" class="button">ボタン</a>で、a要素をボタンにもできますが、
aは使いにくいんですよね。やっぱりデザイン的に使いたいだけなんで、spanかdivなんです。
>>898
Vue.jsは知りませんが、イメージとしてはそういうことがしたいです。
HTML5とかJavascriptとかjQueryとかで可能なら一番なのですが・・・
900デフォルトの名無しさん
2019/01/20(日) 23:53:43.09ID:enluc8/B そもそもJSにdivをbuttonとして誤認識させた後に何をしたいのかがよくわからないけど、どうしてもHTMLButtonElementにしたいってのが目的ならそういうコンバーターなり何なりを作るしかないんじゃないの
901デフォルトの名無しさん
2019/01/21(月) 00:11:05.42ID:oLr+arIk >>899
意味不明。初心者が馬鹿やろうとしてるとしか。
JavaScriptも24年の歴史があり、広く使われているのだから、
初心者が思いつくようなところで今更困ることはほぼ無い。
それはやり方を間違えているだけ。
多分CSSについて勉強した方がいい。
意味不明。初心者が馬鹿やろうとしてるとしか。
JavaScriptも24年の歴史があり、広く使われているのだから、
初心者が思いつくようなところで今更困ることはほぼ無い。
それはやり方を間違えているだけ。
多分CSSについて勉強した方がいい。
902デフォルトの名無しさん
2019/01/21(月) 00:55:24.42ID:DW5LJSe/ この世にIEという存在がなければそんな変なことは考えないのですが、
IEの利用者がまだいてbuttonのクリックイベントと、divのクリックイベントでは
差異があるので、なんとかしようと考えた次第です。
とりあえず「簡単にはできないし、まず無理」という結論であればそれを受け入れます。
IEの利用者がまだいてbuttonのクリックイベントと、divのクリックイベントでは
差異があるので、なんとかしようと考えた次第です。
とりあえず「簡単にはできないし、まず無理」という結論であればそれを受け入れます。
903デフォルトの名無しさん
2019/01/21(月) 01:12:29.24ID:oLr+arIk >>902
馬鹿乙
IEなんて大昔からあるだろ。
それが本当に必要なら、誰かが既に開発して、それこそjQueryにでも搭載されてるよ。
無い=要らない、ってことなんだよ。初心者ならやり方を間違ってるだけ。
馬鹿乙
IEなんて大昔からあるだろ。
それが本当に必要なら、誰かが既に開発して、それこそjQueryにでも搭載されてるよ。
無い=要らない、ってことなんだよ。初心者ならやり方を間違ってるだけ。
904デフォルトの名無しさん
2019/01/21(月) 01:17:37.84ID:WT3LElYg 挙動を統一したいならCanvasでやれ
そういうフレームワークも増えてきてる
そういうフレームワークも増えてきてる
905デフォルトの名無しさん
2019/01/21(月) 05:38:32.19ID:VYjLMLtx906デフォルトの名無しさん
2019/01/21(月) 07:58:41.38ID:vkfJXJ7K カード型みたいにボックスの中に画像、タイトル、アイコン、とかいろんな要素があって
そのカードがボタンの役割をしているならdivでもいいんじゃないの?
むしろbuttonタグの中にdivやらspanやら、iとかいろいろ要素ぶっ込むものなのかね?
そのカードがボタンの役割をしているならdivでもいいんじゃないの?
むしろbuttonタグの中にdivやらspanやら、iとかいろいろ要素ぶっ込むものなのかね?
907デフォルトの名無しさん
2019/01/21(月) 08:15:29.19ID:ubpSrO6v ieがdivのクリックイベントを拾わない…?
908デフォルトの名無しさん
2019/01/21(月) 08:30:56.83ID:8RTHI8s9 >>899
UIだけなら、CSSでボタンライクではないようにも変更できるわけでdiv要素を使う理由はない
UIだけなら、CSSでボタンライクではないようにも変更できるわけでdiv要素を使う理由はない
909デフォルトの名無しさん
2019/01/21(月) 09:28:46.72ID:63p0KSKR >>907
Enterキー押下時のclickイベント拾わない話じゃねーかとエスパーしてみる
それは他のブラウザでも同じなので、keydownイベント拾ってEnterキーだけ抽出してclickイベント時と同じ挙動をさせるしかないよね
shift/alt/meta/ctrlキー同時押しはもちろん排除するとしてさ
Enterキー押下時のclickイベント拾わない話じゃねーかとエスパーしてみる
それは他のブラウザでも同じなので、keydownイベント拾ってEnterキーだけ抽出してclickイベント時と同じ挙動をさせるしかないよね
shift/alt/meta/ctrlキー同時押しはもちろん排除するとしてさ
910デフォルトの名無しさん
2019/01/21(月) 12:48:28.69ID:DT8npDQe911デフォルトの名無しさん
2019/01/21(月) 14:19:25.15ID:PNnv4t9U javascriptでreplaceを用いた特定の文字の置換ができないです。
// サーバーからデータを受信したとき
function onReceive(data) {
let json = JSON.parse(data);
let messages = document.getElementById('chat');
let li = document.createElement('li');
if(json.text == 'おい'){
json.text = 'オイオイオイ'
}
// JSONから必要なデータを取り出して、テキストにする
li.innerHTML = json.count + ":" + "<span style='color:green'><big><b>ななしさん</b></big></span>" + "ID:" + socket.id + "<BR>" + json.text;
// 画面に要素を追加する
messages.appendChild(li);
}
これがソースコードの一部です。
このソースコードで、「おい」と打ったら「オイオイオイ」と返ってくるのですが、
「あいうおいえお」と打ったら「あいうおいえお」と返ってきます。
本当は「あいうオイオイオイえお」と返ってきてほしいです。
// サーバーからデータを受信したとき
function onReceive(data) {
let json = JSON.parse(data);
let messages = document.getElementById('chat');
let li = document.createElement('li');
if(json.text == 'おい'){
json.text = 'オイオイオイ'
}
// JSONから必要なデータを取り出して、テキストにする
li.innerHTML = json.count + ":" + "<span style='color:green'><big><b>ななしさん</b></big></span>" + "ID:" + socket.id + "<BR>" + json.text;
// 画面に要素を追加する
messages.appendChild(li);
}
これがソースコードの一部です。
このソースコードで、「おい」と打ったら「オイオイオイ」と返ってくるのですが、
「あいうおいえお」と打ったら「あいうおいえお」と返ってきます。
本当は「あいうオイオイオイえお」と返ってきてほしいです。
912デフォルトの名無しさん
2019/01/21(月) 14:23:43.50ID:DqxQvGU+ replace使ってないから
913デフォルトの名無しさん
2019/01/21(月) 14:27:21.86ID:PNnv4t9U if(json.text == 'おい'){
json.text = 'オイオイオイ'
}
上記の部分を
json.text.replace('おい','オイオイオイ')
にしたら何も表示されなくなってしまいました。
json.text = 'オイオイオイ'
}
上記の部分を
json.text.replace('おい','オイオイオイ')
にしたら何も表示されなくなってしまいました。
914デフォルトの名無しさん
2019/01/21(月) 14:31:42.02ID:DqxQvGU+915デフォルトの名無しさん
2019/01/21(月) 14:39:13.61ID:PNnv4t9U916デフォルトの名無しさん
2019/01/21(月) 14:40:34.76ID:PNnv4t9U917デフォルトの名無しさん
2019/01/21(月) 14:45:16.85ID:DqxQvGU+ replaceってヒントを貰ってるんだから、replaceについて調べればいいだけ
918デフォルトの名無しさん
2019/01/21(月) 16:01:51.07ID:PNnv4t9U919デフォルトの名無しさん
2019/01/21(月) 16:05:59.24ID:DqxQvGU+ 無能ってすぐ人に答えを求めるよな
https://medaka.5ch.net/test/read.cgi/prog/1540885252/
やっぱり俺って有能なんだなあ
すぐ人に答えを求めたりしないしな
https://medaka.5ch.net/test/read.cgi/prog/1540885252/
やっぱり俺って有能なんだなあ
すぐ人に答えを求めたりしないしな
920デフォルトの名無しさん
2019/01/21(月) 17:34:06.91ID:UEk4ntQa # 詳しい人、知恵を貸してくれ。
div1 = document.createElement("div")、document.body.appendChild(div1)
として、div1 の style の position を absolute や fixed として、
style.top, style.left に座標を指定しても、以下のような affiliate がある場合、
newBox の margin の 100px と全く同じだけ、div1 の位置が下に下がってしまう。
仕様上は、position:absolute は、親要素であるところの body 要素の左上の点からの
相対位置で指定されるはずなのに、なぜだろう?
自分の理解では、以下の affiliate は、div1 などのもっとも年上の兄弟として
追加されるだけだから、div1 の位置には影響を与えないと思うんだが。
var func = function(){
var parent = document.getElementsByTagName("body")[0];
var newBox = document.createElement("div");
newBox.setAttribute('id', 'vdbanner');
newBox.setAttribute("style","display:block!important;position:relative!important;top:0!important;left:0!important;margin:100px 0 !important;padding:0!important;text-align:center!important;");
newBox.innerHTML = "広告内容";
parent.insertBefore(newBox, parent.firstChild);
}
try {
window.addEventListener("load", func, false);
}
catch(e) {
window.attachEvent("onload", func);
}
div1 = document.createElement("div")、document.body.appendChild(div1)
として、div1 の style の position を absolute や fixed として、
style.top, style.left に座標を指定しても、以下のような affiliate がある場合、
newBox の margin の 100px と全く同じだけ、div1 の位置が下に下がってしまう。
仕様上は、position:absolute は、親要素であるところの body 要素の左上の点からの
相対位置で指定されるはずなのに、なぜだろう?
自分の理解では、以下の affiliate は、div1 などのもっとも年上の兄弟として
追加されるだけだから、div1 の位置には影響を与えないと思うんだが。
var func = function(){
var parent = document.getElementsByTagName("body")[0];
var newBox = document.createElement("div");
newBox.setAttribute('id', 'vdbanner');
newBox.setAttribute("style","display:block!important;position:relative!important;top:0!important;left:0!important;margin:100px 0 !important;padding:0!important;text-align:center!important;");
newBox.innerHTML = "広告内容";
parent.insertBefore(newBox, parent.firstChild);
}
try {
window.addEventListener("load", func, false);
}
catch(e) {
window.attachEvent("onload", func);
}
921デフォルトの名無しさん
2019/01/21(月) 17:53:37.90ID:DqxQvGU+ 長ったらしいので翻訳。まずimportant;は使うな
#vdbanner {
display: block !important;
position: relative !important;
top: 0 !important;
left: 0 !important;
margin: 100px 0 !important;
padding: 0 !important;
text-align: center !important;
}
$(function() {
$("<div/>", {id: 'vdbanner', text: '広告内容'}).prependTo('body');
});
#vdbanner {
display: block !important;
position: relative !important;
top: 0 !important;
left: 0 !important;
margin: 100px 0 !important;
padding: 0 !important;
text-align: center !important;
}
$(function() {
$("<div/>", {id: 'vdbanner', text: '広告内容'}).prependTo('body');
});
922デフォルトの名無しさん
2019/01/21(月) 17:59:05.34ID:PNnv4t9U できたぞ、質問に答えられないバカ
var result = json.text
for(var i=0;i<json.text.length;i++){
if(json.text[i] == 'お' && json.text[i+1]=='い'){
var tagetString = json.text;
var reString = /おい/gi; // 複数を置換する時は"g"を、
// 大文字/小文字の区別をしない場合には"i"を指定します。
var repStrung = "オイオイオイ";
result = tagetString.replace(reString, repStrung);
}
}
じゃあな無能
var result = json.text
for(var i=0;i<json.text.length;i++){
if(json.text[i] == 'お' && json.text[i+1]=='い'){
var tagetString = json.text;
var reString = /おい/gi; // 複数を置換する時は"g"を、
// 大文字/小文字の区別をしない場合には"i"を指定します。
var repStrung = "オイオイオイ";
result = tagetString.replace(reString, repStrung);
}
}
じゃあな無能
923デフォルトの名無しさん
2019/01/21(月) 18:04:30.32ID:DqxQvGU+ 一行で書けるけど、じゃあなって言われたな。じゃあなwwww
924デフォルトの名無しさん
2019/01/21(月) 18:29:08.32ID:mEBdwP2z >>899
ボタン部分だけのクリックじゃなくて、
もう少し範囲を広くして、ボタンを含む、div で、クリックイベントを動作させたいのかね?
ボタン部分だけだと、範囲が狭くて、うまく押せない人がいるから
それと投稿者は、次に投稿する際に、名前欄に最初の投稿のレス番号を入れてくれ
ボタン部分だけのクリックじゃなくて、
もう少し範囲を広くして、ボタンを含む、div で、クリックイベントを動作させたいのかね?
ボタン部分だけだと、範囲が狭くて、うまく押せない人がいるから
それと投稿者は、次に投稿する際に、名前欄に最初の投稿のレス番号を入れてくれ
925デフォルトの名無しさん
2019/01/21(月) 18:34:04.07ID:mEBdwP2z926デフォルトの名無しさん
2019/01/21(月) 18:36:35.58ID:mEBdwP2z >>920
web の質問は、こちらの板ではなく、web制作管理板の方へ書き込んでください!
web の質問は、こちらの板ではなく、web制作管理板の方へ書き込んでください!
927デフォルトの名無しさん
2019/01/21(月) 18:37:59.67ID:/g0A2C06 >>922 は酷いコードだなあ
928デフォルトの名無しさん
2019/01/21(月) 18:53:53.44ID:UEk4ntQa929デフォルトの名無しさん
2019/01/21(月) 18:59:45.68ID:x6DE2oRu930デフォルトの名無しさん
2019/01/21(月) 19:03:58.42ID:UOzXXkDM >>922
var result = json.text.replace('おい', 'オイオイオイ')
var result = json.text.replace('おい', 'オイオイオイ')
931デフォルトの名無しさん
2019/01/21(月) 22:12:37.48ID:XPYcyOEd >>930
それを複数個作るとエラーが出るんです。
それを複数個作るとエラーが出るんです。
932デフォルトの名無しさん
2019/01/21(月) 22:20:46.95ID:UOzXXkDM >>931
var result = json.text.replace(/おい/g, 'オイオイオイ')
var result = json.text.replace(/おい/g, 'オイオイオイ')
933デフォルトの名無しさん
2019/01/21(月) 23:50:10.62ID:30QJt/vt ES6で新たに導入された式や文は
ES5.1の構文糖衣と考えて良いの?
ES5.1の構文糖衣と考えて良いの?
934デフォルトの名無しさん
2019/01/21(月) 23:51:40.65ID:DqxQvGU+ 「ES5.1の構文糖衣」という表現がおかしい
935デフォルトの名無しさん
2019/01/22(火) 06:53:00.52ID:dHPHLM6Z Class構文は再現できないので糖衣構文ではない
936デフォルトの名無しさん
2019/01/22(火) 09:26:06.80ID:QhWv4dIw >>935
> ECMAScript 2015 で導入された JavaScript クラスは、
> JavaScript にすでにあるプロトタイプベース継承の糖衣構文です。
> クラス構文は、新しいオブジェクト指向継承モデルを JavaScript に導入しているわけではありません。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Classes
> ECMAScript 2015 で導入された JavaScript クラスは、
> JavaScript にすでにあるプロトタイプベース継承の糖衣構文です。
> クラス構文は、新しいオブジェクト指向継承モデルを JavaScript に導入しているわけではありません。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Classes
937デフォルトの名無しさん
2019/01/22(火) 09:32:15.42ID:zKxMKaTe クラス構文だと関数で呼べないから違うものを導入してるよね
938デフォルトの名無しさん
2019/01/22(火) 10:20:50.82ID:SJtsjRub 糖衣構文かどうかにこだわるのってなんでだろう?
マウント取りたいだけな気がする
マウント取りたいだけな気がする
レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- アメリカ、入国時に「日本人を含む外国人観光客の最大5年分のSNS履歴の提出」義務化 過去10年間に使用のメールアドレスや電話番号等も [Hitzeschleier★]
- 【おこめ】「有能だったんじゃ」おこめ券で批判殺到の鈴木農水大臣…ネットでは前任の“進次郎再評価” [ぐれ★]
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★3 [Hitzeschleier★]
- 【中国外務省】日本への渡航自粛を再度呼びかけ 今度は「地震発生」を理由に [ぐれ★]
- 【芸能】デパートで見つけたランドセルが衝撃価格! つまみ枝豆「どこかで規制しないと」に共感の声殺到 「全て同感」「高すぎます」★2 [冬月記者★]
- 【MLB】ダルビッシュの息子・ショウエイが大学チームに所属決定 「野球IQを持っている」と監督 183センチ、86キロの恵まれた体形 [冬月記者★]
- 日本人、世界で最もブランドに興味なし🇯🇵 [462275543]
- 【悲報】たぬかなが渡邊渚を壮絶バッシング 「グラビア出したあたりから臭いな~と思ってたが激臭になってたわ。中居は悪くない」 [455031798]
- 【悲報】鈴木農水大臣、国民から「こいつひょっとしてアホなんじゃね?」と思われ始めてしまうwww [793117252]
- 日本に旅行来てる中国人減ったとか言ったの誰だよ
- 自閉症児の父親「中絶しておけば良かった。 家族が欲しかったのに、手に入れたのは人間たまごっち」 [777114754]
- お昼のまったり🍵😶‍🌫🤏すこすこハウス🏡
