RubyのHash#fetchとHash#[]
Hash#[]は該当するキーが登録されていないときはデフォルト値が登録されていればデフォルト値、なければnilを返す
https://docs.ruby-lang.org/ja/latest/class/Hash.html#I_–5B–5D
book1 = book = {title: 'hoge', author: 'fuga'}
p book[:title]
# => "hoge"
p book[:published_at]
# => nil
book2 = Hash.new("default value")
p book2[:none]
# => "default value"
Hash#fetchはキーが存在しなければ例外を返す
第二引数にデフォルト値を指定することもでき、指定したキーが存在しない場合はデフォルト値が取得される
https://docs.ruby-lang.org/ja/latest/class/Hash.html#I_FETCH
# 基本的にはHash#[]と同じ動作
book1 = book = {title: 'hoge', author: 'fuga'}
p book.fetch(:title)
# => "hoge"
book2 = Hash.new("default value")
p book2.fetch(:none)
# => key not found: :none (KeyError)
# 第二引数にデフォルト値を指定
p book2.fetch(:none, 'default value')
# => "default value"
Logicoolのマウスが意図せずダブルクリックになってしまう
1年ちょっと前に買ったLogicoolのマウスがたまに誤作動して、1クリックでダブルクリックになってしまう現象が起きた
もしや寿命…?と思ってビビっていたが、こちらの記事が出てきたので試しにPCとマウスの接続を切って、10秒間クリックしまくった
https://zapanet.info/blog/item/2937
そのおかげかは不明だが、意図しないダブルクリックはいまのところ起きていない
明日仕事をして問題なさそうだったら解決と言えそう