我々はこの筆跡を知っている!
国立新美術館での荒木飛呂彦原画展 -冒険の波紋-
ここにある荒木先生直筆のメッセージ。
独特の筆跡でもあるのだけれどどこか既視感があって、記憶をまさぐっていたら
3部で花京院が承太郎に渡したハンカチに書かれていた脅迫状の筆跡にそっくりだった。
まあどっちも荒木先生が書いたのでそっくりもなにもないのだが。
【参考ページ】 atmarkjojo.org
しかし、花京院のこの脅迫状には有名な誤字があり、「幽波紋(ゆうはもん)」が「幽波絞(ゆうはしぼり?)」になっていたのだった。
(今発売されているコミックスでは修正されているらしい)
それを踏まえてもう一度今回の荒木先生のメッセージを読む。
「JOJO 冒険の波紋」
「冒険の波絞」 ではない!
おとなはウソつきではないのです。 まちがいをするだけなのです…… ~ジョジョの奇妙な冒険 第四巻あとがき~
だが同じ間違いはしないのです。
Get back the future
最近の日本製品の品質不正を踏まえてバック・トゥ・ザ・フューチャーの以下のシーンを御覧ください。
1955年のドク「故障するのも不思議じゃない。日本製だ」
1985年から来たマーティ「どういう意味?日本製は最高さ」
1986年の私「せや!日本製最高や!」
2017年の私「ドクの方が正しいのでは?」
30年経って観ると何とも悲しい気分になるシーンだ。日本ブランドがこんなに強かったのも今の子供には信じられなくなっているのかもしれない。
vue.jsでStoreパターンを使用した時のv-model代用設定
v-model
を使うとStore
を通さずにdata
が変わってしまう。
Store
パターンの制約を守るために以下のように:value
を更新する必要がある。
See the Pen Storeパターンにおけるv-modelへの対処 by tamoriinu (@yokoyama) on CodePen.
Vue.jsによるデータ絞り込み
Codegridの連載を元にちょっとだけ変えたもの。
複数選択するとandで絞り込む
See the Pen playerSelecter by tamoriinu (@yokoyama) on CodePen.
配列を一定の要素を持つ配列の配列に変換
何処かで使う可能性がありそうなのでメモ
lodashでそのもののメソッドがある
See the Pen lodash chunk by tamoriinu (@yokoyama) on CodePen.
実装 github.com
グループ
こんなデータがあるとして、
[ { name: "筒香", bats: 5, hits: 3 }, { name: "ロペス", bats: 5, hits: 2 }, { name: "宮崎", bats: 5, hits: 4 }, { name: "筒香", bats: 4, hits: 2 }, { name: "ロペス", bats: 4, hits: 4 }, { name: "宮崎", bats: 4, hits: 4 }, ]
こんな結果が欲しいとき
[ {:name=>"宮崎", :bats=>9, :hits=>8}, {:name=>"ロペス", :bats=>9, :hits=>6}, {:name=>"筒香", :bats=>9, :hits=>5}, ]
rubyでこんな風に書いた
records = [ { name: "筒香", bats: 5, hits: 3 }, { name: "ロペス", bats: 5, hits: 2 }, { name: "宮崎", bats: 5, hits: 4 }, { name: "筒香", bats: 4, hits: 2 }, { name: "ロペス", bats: 4, hits: 4 }, { name: "宮崎", bats: 4, hits: 4 }, ] ans = records.each_with_object([]) do |item, memo| if ev = memo.detect{ |ev| item[:name] == ev[:name] } ev.merge!(item.merge(bats: item[:bats] + ev[:bats], hits: item[:hits] + ev[:hits])) else memo << item.dup end end .sort_by{|h| -h[:hits] } p ans # [ # {:name=>"宮崎", :bats=>9, :hits=>8}, # {:name=>"ロペス", :bats=>9, :hits=>6}, # {:name=>"筒香", :bats=>9, :hits=>5} # ]
SQLのほうがシンプルに書ける。
# create table create table bayrecord ( name varchar(20), bats int, hits int ); # insert data insert into bayrecord values ('筒香', 5, 3); insert into bayrecord values ('ロペス', 5, 2); insert into bayrecord values ('宮崎', 5, 4); insert into bayrecord values ('筒香', 4, 2); insert into bayrecord values ('ロペス', 4, 4); insert into bayrecord values ('宮崎', 4, 4); # select select name, sum(bats), sum(hits) from bayrecord group by name order by sum(hits) desc;