LoginSignup
16
0

More than 1 year has passed since last update.

簡単Elixirシリーズ ~ RGBからカラーコードへ変換する簡単なお仕事

Last updated at Posted at 2022-12-07

この記事は「Elixir Advent Calendar 2022」8日目の記事です

東京にいるけどFukuokaexのYOSUKEです。

簡単 Elixirシリーズでは小ネタをサクッと書いていこう。というコンセプトで作っていきます。

仕事柄、Elixir以外の言語を使ってサンプルコードを作成する。または教材を作ることをやっています。最近、カラーコードをRGBに変換してくれる関数を作りなさい。というお題のJavaScriptのコードを書いたので、Elixirで書くとどうなるか?を試してみようという記事です。(そう、この記事はサクッとがコンセプトW)

まずはJavaScriptでtoColorCode([ 219, 112, 147 ])を入力して#DB7093を返すようにしたいと思います。


function toColorCode(array){
    const R = array.slice(0,1).pop().toString(16).toUpperCase()
    const G = array.slice(1,2).pop().toString(16).toUpperCase()
    const B = array.slice(2,3).pop().toString(16).toUpperCase()
    console.log(["#", R, G, B ].join(''))
}
defmodule Change do
  def toColorCode([r,g,b]) when is_list([r,g,b]) do
    "#" <> Integer.to_string(r, 16) <> Integer.to_string(g, 16) <> Integer.to_string(b, 16)
  end
end
16
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
0