お題:selectタグ内のoptionをjavascript(jQuery)でランダムに選択する
これについて検索した結果。

var $options = $('#sel').find('option'),
random = ~~(Math.random() * $options.length);

$options.eq(random).prop('selected', true);

なるほどー。…って、なんだこのニョロニョロは?
という訳でこれが本記事のタイトル前半部分。
後半部分の話はこれ。
 ↓
js ~~ - Google 検索
ダメ元で記号で検索してみたところ…
ちゃんとヒットするではないか!
という訳で、「~~」について詳しく解説されている記事にたどり着くことができました。
 ↓
【JavaScript】~~ で小数の切り捨て(ビット演算子 ~2つで0方向へ切り捨て) at softelメモ

#自分が「鬱陶しい昔語りのおじさん」になっていく…今となってはあの人達の気持ちがわかる…。
昔は検索語に入れた記号は無視されたんだよ。
意味がわからない記号に遭遇したときは苦労したものさ。
そこで、記号の意味を調べるための記事を作ってみたことがあったなー。
便利になったものだ。
【追記2025/02/27】
今日同じことをやってしまった…。
まあ、今回は『確か記事を書いたような気がするけど、まいっか』でやったので、やってみたあとで『あれ、なんだかデジャヴュー?』となった訳では無い。
そして、新しい発見があったので、ヨシ!

二重ビット否定(~~)を使ったコード Javascript #JavaScript - Qiita

今度は↑この記事のほうが上位にヒットした。
前回は「js ~~」で検索したらしいが、今回は「~~ js」と逆順だったから検索結果も変わったのか、単に時間が経って順位が変わっただけかも。

んで、何が新しい発見かというと、これです。
~-1が0になる性質を生かして、indexOfで検索したい際に値が存在しない場合を以下のように書けます。
if (!~arr.indexOf(str)) {
console.log('なし')
}

なんだってー
確かに「if (arr.indexOf(str) < 0)」と書くよりスッキリとはするが…知らないと「なんじゃこりゃぁ〜っ!」となるやつですな。
まあでも、「!~ js」でググったら正解がヒットした。昔なら絶対わからなくて涙目になってたなー。つくづく、便利な世の中になったものよのー。
そういえば、ググるのってもう古いよね。今どき生成AIに質問するよね。。

試しにグーグル様ご提供のGemini無料版に聞いてみたところ、なんとまあご丁寧に解説してくださったこと。。。。
おまけに、改善案までご提示いただいた。
!~arr.indexOf(str) は、古い JavaScript のイディオムであり、現在ではより可読性の高い Array.prototype.includes() メソッドを使うのが一般的です。

ほんと、近い将来プログラマーって不要になってしまうのではなかろうか…(´・ω・`)