[過去ログ] JavaScript の質問用スレッド vol.125 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
317: (ワッチョイ 6f2c-WJTY [221.113.235.167]) 2022/12/05(月)12:51 ID:2GYg1OhQ0(1) AAS
3つの条件の組合せ爆発が起こる、2 ^ 3 = 8 通りだから、かなり難しい

普通は、条件の組合せ爆発は起こらない

例えば、1〜10 の内のどれか1つを選択する場合など。
もし、1を選んだら、2〜10は選ばれない。
排他条件になるので単純

君の条件は排他条件ではないので、
すべての組合せ爆発が起こるので、かなり難しい
318: (ワッチョイ 834b-uvfe [110.2.215.28 [上級国民]]) 2022/12/05(月)13:04 ID:skXK9jGq0(2/2) AAS
冗長なコードを書いても処理に1秒もかからない
何百行もある市販のプログラム書いてるわけじゃないし
これでいいのかな?
319: (ワッチョイ d7bd-hPFt [125.198.8.252]) 2022/12/05(月)13:28 ID:a4wHahQZ0(1) AAS
組み合わせ爆発言いたいだけだろ。
組み合わせ数自体は多くなるけど、組み合わせる操作そのものは組み合わせる数に単純比例。
3入力なら3回の組み合わせ操作で8通りの結果が得られ、今回のケースならその組み合わせのうち3種に反応するだけのこと。
100入力なら100回の組み合わせ操作で1.27x10^30通りの結果が得られ、その中の100種に反応するだけのこと。
320: (ワッチョイ 27cf-R4o2 [153.174.224.39]) 2022/12/05(月)13:31 ID:m5vf/Aut0(1) AAS
既に幾つも正解や技法が出てるしな
321: (ワッチョイ 7b35-4FAg [112.70.158.203]) 2022/12/05(月)15:12 ID:FypkNfQF0(1) AAS
大袈裟に語るバカが現れてワロタw
322
(1): (ワッチョイ 1b8b-Yzbi [210.228.102.1]) 2022/12/05(月)20:09 ID:iMOo3onG0(1/2) AAS
>>315
自作でやるならtouchmoveイベントかなあ
でもライブラリを探して使う方がはるかに簡単
フリック ライブラリ とかで検索して好きなの使えばいいと思う
323: (ワッチョイ d7bd-hPFt [125.198.10.96]) 2022/12/05(月)20:58 ID:SWJP59wv0(1) AAS
んでいろんなライブラリを寄せ集めてページサイズが JS だけで MB単位になるのね
324
(2): (ワッチョイ a797-g9pY [121.94.16.107]) 2022/12/05(月)22:13 ID:lIq+TvzU0(1/2) AAS
すいません。
各<button>要素のkeyクラスに対して、背景色をつけたい。

[HTML]
<div class="keyboard">
<button id="0" class="key" >0</button>
<button id="1" class="key" >1</button>
<button id="2" class="key" >2</button>
<button id="3" class="key" >3</button>
<button id="4" class="key" >4</button>
<button id="5" class="key" >5</button>
省5
325: (ワッチョイ 1b8b-Yzbi [210.228.102.1]) 2022/12/05(月)22:30 ID:iMOo3onG0(2/2) AAS
>>324
document.getElementsByClassName("key")
で返ってくるのは要素の配列(正確には配列風のオブジェクト)
なのでforで回すなりして各要素ごとにスタイルつける
326: (ワッチョイ a797-g9pY [121.94.16.107]) 2022/12/05(月)22:50 ID:lIq+TvzU0(2/2) AAS
ありがとうございます。
327: (ワッチョイ e310-RX5i [180.12.82.129]) 2022/12/05(月)23:08 ID:NngXbYA40(1) AAS
>>322
ありがとうございます
328: (ワッチョイ 53f0-7kHv [58.98.96.219]) 2022/12/06(火)16:54 ID:iDVaiUL+0(1) AAS
最近あんまclassNameで操作しない感じ
querySelector系使ってない?
329: (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)18:14 ID:xVTCRvFV0(1/8) AAS
【俺】
おいChatGPT、外部ソースを使わずにJSで音を鳴らすコードを教えろ
ネコの鳴き声で、可愛らしくニャーオと鳴くような感じで4649

【ChatGPT】
JavaScriptから、可愛らしく、ニャーオと鳴くようなネコの鳴き声を再生するには、AudioContextを使用することで実現できます。例えば、次のようなコードで、より可愛らしいネコの鳴き声を再生することができます。

// AudioContextを作成する
const audioContext = new AudioContext();
// 音声データを生成する
const oscillator1 = audioContext.createOscillator();
oscillator1.type = 'sawtooth';
省18
330: (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)18:29 ID:xVTCRvFV0(2/8) AAS
【俺】
JSを使ってマウスを目で追うプログラムを教えろ
Canvasに描画された顔の目だけが動く感じでおなしゃす
【ChatGPT】
以下のプログラムで実装することができます。
→ 外部リンク:jsfiddle.net
【俺】
試したら、目が顔から飛び出した、おかしくない?
【ChatGPT】
そうですね。上記のプログラムはサンプルコードであり、実際のアプリケーションではもっと完成度の高いものが必要です。
省10
331: (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)18:36 ID:xVTCRvFV0(3/8) AAS
>>324 をそのままChatGPTに投げてみた

`getElementsByClassName()`は、要素の配列(HTMLCollection)を返すメソッドです。
そのため、`getElementsByClassName()`に対してスタイルを設定することはできません。
そのため、エラーが発生していると思われます。

代わりに、以下のように各要素に対して個別にスタイルを設定する必要があります。

const keys = document.getElementsByClassName("key");
for (let i = 0; i < keys.length; i++) {
keys[i].style.backgroundColor = 'skyblue';
}

また、代わりにquerySelectorAll()を使用することもできます。
省8
332
(1): (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)18:44 ID:xVTCRvFV0(4/8) AAS
ちなみにJavaScriptでと前置きして>>296,297を通すとこれが変えてきた
合ってるかどうかは知らん

if (A && !B && !C) {
// Aがtrue、かつBがfalse、かつCがfalseの場合に実行する処理(関数Aなど)を記述します
} else if (!A && B && !C) {
// Aがfalse、かつBがtrue、かつCがfalseの場合に実行する処理(関数Bなど)を記述します
} else if (!A && !B && C) {
// Aがfalse、かつBがfalse、かつCがtrueの場合に実行する処理(関数Cなど)を記述します
} else {
// A, B, Cがすべてfalseの場合に実行する処理(return文など)を記述します
省1
333: (ワッチョイ 834b-uvfe [110.2.215.28 [上級国民]]) 2022/12/06(火)18:57 ID:V5m/92bh0(1) AAS
>>332
たぶん合ってるよ
334: (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)18:57 ID:xVTCRvFV0(5/8) AAS
>>252
【ChatGPT】に通したら流石にたまげた

1回目:↓
function hasDifferentValues(array) {
// 配列から1つ目の要素を取り出す
const firstValue = array[0];

// 残りの要素を順に比較する
for (let i = 1; i < array.length; i++) {
// 残りの要素が1つ目の要素と異なる値だった場合はtrueを返す
if (array[i] !== firstValue) {
省16
335: (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)19:21 ID:xVTCRvFV0(6/8) AAS
JSの一番の闇だと個人的に思っているwith-ProxyについてChatGPTに質問してみた

【俺】
JSの質問
pはProxyオブジェクト
let a=1
with(p){a=b}
console.log(a)
としたとき、コンソールに「42」と表示させるようなpを教えろください

【ChatGPT】
let p = new Proxy({b:42}, {
省9
336: (ワッチョイ bb55-RX5i [122.20.171.29]) 2022/12/06(火)19:30 ID:xVTCRvFV0(7/8) AAS
【俺】
with文中のProxyの挙動が分かるのはなんで?ここまで奇抜なコードを書く人は少ないだろうから、学習できるデータも少なかろうに

【ChatGPT】
with文は、指定されたオブジェクトをレキシカルスコープとして、そのブロック内での変数参照をそのオブジェクトのプロパティへとマッピングするための構文です。
つまり、with文内では、変数名と同じ名前のプロパティが存在する場合は、そのプロパティの値を参照します。
そして、Proxyオブジェクトは、元のオブジェクトに対して、ある処理を差し挟むことができるものです。
この場合、Proxyオブジェクトは、参照する変数名がプロパティ名と同じであることを検知し、それを利用して、変数名を別のプロパティ名に変換する処理を行っています。
そのため、with文中では、Proxyオブジェクトが処理を差し挟んでいることが分かり、独自の挙動を実現することができます。

【俺】
それをどうやって理解してんの?
省14
1-
あと 666 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.012s