関数

関数:特定のタスクを実行するためにデフォルトで準備した数式です。 関数は通常、データを取り込み、処理し、結果を表示します。

タスクの例:

  • テキストに含まれる文字数を計算します。
  • テキスト内の特定の単語を検索します。
  • どちらの数が2つの数の最小であるかを決定します。

関数は通常、次の構造になっています

  • function(argument:TYPE)→結果:TYPE
  • function(argument1:TYPE、argument2:TYPE)→結果:TYPE
  • function(argument1:TYPE、argument2:TYPE、argument3:TYPE)→結果:TYPE

関数は通常、タスクを実行するために1つまたは複数のデータを入力として受け取ります。引数と結果は、常に特定のタイプです。タイプは、テキスト、数字、または色に設定することができます。

選択できるカテゴリは以下の通りです。

Text

  • concat(source1: TEXT, source2: TEXT)TEXT

    2つの異なるテキストを1つにします

    • Example:concat("hello", "world")"helloworld"
  • indexOf(source: TEXT, searchValue: TEXT)NUMBER

    テキスト内のキーワードの先頭位置を見つけます。 キーワードがテキストに存在しない場合、戻り値は-1となります。

    • Example:indexOf("hello world", "world")6
    • Example:indexOf("hello world", "hello")0
    • Example:indexOf("hello world", "goodbye")-1
    • 電子メールの検証などの具体例にはindexOfを使用してください。詳細例はこちらをご覧ください。
  • length(source: TEXT)NUMBER

    テキスト内の文字数をカウントします。

    • Example:length("hello")5
    • Example:length("helloworld")10
    • Example:length("hello world")11
    • パスワードの長さを認証などを設定する時に使用します。詳細例はこちらをご覧ください。
  • lowerCase(source: TEXT)TEXT

    大文字のテキストを小文字に変換、または小文字のテキストを大文字に変換します。

    • Example:lowerCase("Hello")"hello"
  • upperCase(source: TEXT)TEXT

    大文字のテキストを小文字に変換、または小文字のテキストを大文字に変換します。

    • Example:upperCase("Hello")"HELLO"
  • left(source: TEXT, count: NUMBER)TEXT

    テキストの左または右から任意の数の文字を抽出します。

    • Example:left("hello", 3)"hel"
  • lpad(source: TEXT, length: NUMBER, pad: TEXT)TEXT

    好みの長さになるように、テキストの左側あるいは右側に入力した文字を追加します。

    • Example:lpad("5", 2, "0")"05"
    • Example:lpad("5", 4, "0")"0005"
  • rpad(source: TEXT, length: NUMBER, pad: TEXT)TEXT

    好みの長さになるように、テキストの左側あるいは右側に入力した文字を追加します。

    • Example:rpad("5", 2, "1")"51"
    • Example:rpad("5", 6, "1")"511111"
  • repeat(source: TEXT, count: NUMBER)TEXT

    指定されたテキストに対して、指定された回数だけ入力操作を繰り返します。

    • Example:repeat("hello", 2)"hellohello"
    • Example:repeat("hello", 3)"hellohellohello"
  • replace(source: TEXT, from: TEXT, to: TEXT)TEXT

    テキストの指定された部分を、他のテキストに置き換えます

    • Example:replace("helloworld", "world", "protopie")"helloprotopie"
    • Example:replace("goodbye, John", "goodbye", "thank you")"thank you, John"
  • trim(source: TEXT)TEXT

    テキストの両側の空白を削除します

    • Example:trim(" helloworld ")"helloworld"
    • Example:trim(" helloworld ")"helloworld"
  • ltrim(source: TEXT)TEXT

    テキストの左側または右側の空白を削除します

    • Example:ltrim(" helloworld ")"helloworld "
  • rtrim(source: TEXT)TEXT

    テキストの左側または右側の空白を削除します

    • Example:rtrim(" helloworld ")" helloworld"

Math

  • pow(source: NUMBER, exponent: NUMBER)NUMBER

    最初の数値を2番目の数値で累乗した結果を計算します。

    • Example:pow(2, 3)8
  • sqrt(source: NUMBER)NUMBER

    入力された数値の平方を計算します。入力した数値が負の場合は計算されません。

    • Example:sqrt(9)3
    • Example:sqrt(2)1.41
  • min(source1: NUMBER, source2: NUMBER)NUMBER

    複数の数の最小値または最大値を選択します

    • Example:min(0, 1)0
  • max(source1: NUMBER, source2: NUMBER)NUMBER

    複数の数の最大値を選択します

    • Example:max(0, 1)1
  • abs(value: NUMBER)NUMBER

    入力された数値の絶対値を抽出します。(負の記号は削除されます)

    • Example:abs(-1)1
    • Example:abs(5 - 25)20
  • sign(value: NUMBER)NUMBER

    入力された数値が正であるか負かを判別します。正の値は1、負の値は-1での値が抽出されます。0を入力すると、結果の値も0になります。

    • Example:sign(5)1
    • Example:sign(-10)-1
    • Example:sign(0)0
  • round(source: NUMBER)NUMBER

    入力された値を四捨五入します。

    • Example:round(3.49)3
    • Example:round(1.5)2
    • Example:round(6.79)7
  • floor(source: NUMBER)NUMBER

    入力された数字を切り捨て、あるいは切り上げます。

    • Example:floor(1.5)1
    • Example:floor(2.99)2
  • ceil(source: NUMBER)NUMBER

    入力された数字を切り捨て、あるいは切り上げます。

    • Example:ceil(1.5)2
    • Example:ceil(4.3)5
  • random()NUMBER

    0から1までランダムな数値

    • Example:random()0から1までの数値をランダムに選びます
  • random(min: NUMBER, max: NUMBER)NUMBER

    0と1の間の小数をランダムに抽出します。2つの数値を入力すると、両者の間にある数字をランダムに抽出します。

    • Example:random(1, 5)1から5までの数字をランダムに選びます
  • randomInt(min: NUMBER, max: NUMBER)NUMBER

    入力された2つの整数をランダムに抽出

    • Example:randomInt(1, 5)1から5までの整数をランダムに選びます
  • radians(degrees: NUMBER)NUMBER

    角度の値をラジアン(弧度)に変換します。

    • Example:radians(180)3.14 = π
    • Example:radians(90)1.57 = π / 2
  • degrees(radians: NUMBER)NUMBER

    ラジアン値(弧度)を角度値に変換します

    • Example:degrees($pi)180
    • Example:degrees($pi / 2)90
  • sin(radian: NUMBER)NUMBER

    ラジアンのサイン値を計算します。

    • Example:sin($pi / 2)1
    • Example:sin($pi / 6)0.5
  • cos(radian: NUMBER)NUMBER

    ラジアンのコサイン値を計算します。

    • Example:cos(0)1
    • Example:cos($pi / 2)0
  • tan(radian: NUMBER)NUMBER

    ラジアンのタンジェント値を計算します。

    • Example:tan($pi / 4)1
    • Example:tan(0)0
  • asin(x: NUMBER)NUMBER

    ラジアンで、xのアークサイン値を計算します。

    • Example:asin(1)1.57 = π / 2
    • Example:asin(0.5)0.52 = π / 6
  • acos(x: NUMBER)NUMBER

    xのアークコサイン(ラジアン)を計算します。

    • Example:acos(1)0
    • Example:acos(0)1.57 = π / 2
  • atan(x: NUMBER)NUMBER

    xのアークタンジェント(ラジアン)を計算します。

    • Example:atan(1)0.79 = π / 4
    • Example:atan(0)0
  • atan2(x: NUMBER, y: NUMBER)NUMBER

    ラジアンで、xとyのアークタンジェント値を計算します。

    • Example:atan2(1, 0)1.57 = π / 2
    • Example:atan2(1, 1)0.79 = π / 4

Color

  • color(red: NUMBER, green: NUMBER, blue: NUMBER)COLOR

    RGB値を基本とするカラーコードに変換します。

    • Example:color(255, 255, 255)#FFFFFF
    • Example:color(255, 102, 97)#FF6661
  • red(source: COLOR)NUMBER

    16進カラー値をRGBに変換し、赤を抽出します。

    • Example:red(#FF0000)255
    • Example:red(#008000)0
    • Example:red(#0000FF)0
  • green(source: COLOR)NUMBER

    16進カラー値をRGBに変換し、緑を抽出します。

    • Example:green(#FF0000)0
    • Example:green(#008000)128
    • Example:green(#0000FF)0
  • blue(source: COLOR)NUMBER

    16進カラー値をRGBに変換し、青を抽出します。

    • Example:blue(#FF0000)0
    • Example:blue(#008000)0
    • Example:blue(#0000FF)255

Type Conversion

  • number(source: TEXT)NUMBER

    テキストを数字に変換します。 テキストを数値に変換できない場合、この操作は無効です。

    • Example:number("1234")1234
    • Example:number("94.27")94.27
  • text(source: NUMBER)TEXT

    数字をテキストに変更します。

    • Example:text(1234)"1234"
    • Example:text(94.27)"94.27"
    • Example:text(1 + 3)"4"
  • format(value: NUMBER, format: TEXT)NUMBER

    数字をテキスト形式に変換します。数字を特定の形式で表すためには、テキストに変更する必要があります。#で整数桁を、0に小数点以下の桁を表示することができます。

    • Example:format(1234.567, "#")1235
    • Example:format(1234.567, "#,###")1,235
    • Example:format(1234.567, "#.###,00")1.234,57
    • Example:format(1234.567, "#,###.00")1,234.57
    • Example:format(1234567, "#,###.00")1,234.57
    • Example:format(1234.567, "#,##.00")12,34.57
  • color(source: TEXT)COLOR

    テキストを16進カラー値に変換します。 テキストが16進カラーをサポートしている場合にのみ使用可能です。

    • Example:color("#FFFFFF")#FFFFFF

Layers

  • layer(source: TEXT)LAYER

    レイヤーまたはレイヤープロパティを使用します。

    • 式やその他の関数の一部として使用できます
  • layer(source: TEXT).propertyTEXT or NUMBER

    レイヤーまたはレイヤープロパティを使用します。 レイヤーのプロパティ詳細についてはこちらをご覧ください。

    • Example:layer("Rectangle 1").xRectangle 1 图层的X坐标
    • Example:layer("Oval 1").opacityOval 1 图层的透明度
    • Example:layer("Input 1").textInput 1 图层的文字
  • parent(layerName: LAYER)LAYER

    上層のプロパティ(コンテナ層、コンポーネントなど)を使用します。

    • 式やその他の関数の一部として使用できます
  • parent(layerName: LAYER).propertyTEXT or NUMBER

    上層のプロパティ(コンテナ層、コンポーネントなど)を使用します。 レイヤーのプロパティの詳細についてはこちらをご覧ください。

    • Example:parent("Rectangle 1").xRectangle 1 上層のX座標
    • Example:parent("Oval 1").opacityOval 1 層の上層の透明度
  • initial(layerName: LAYER, layerProperty: TEXT)TEXT or NUMBER

    特定のレイヤーのプロパティのインタラクション適用前の初期設定値を変換します。レイヤーのプロパティの詳細については、こちらをご参照ください。

    • Example:initial(`Rectangle 1`, "x")Rectangle 1レイヤーのx座標の初期値
    • Example:initial(`Oval 1`, "opacity")Oval 1レイヤーの透明度の初期値
    • Example:initial(`Input 1`, "text")Input1のテキストの初期値

Relative Coordinates

  • toLayerX(containerName: LAYER, x: NUMBER, y: NUMBER)NUMBER

    コンテナレイヤーまたはコンポーネントを基準にしてx座標を計算します。 コンテナまたはコンポーネント内のレイヤーは、それらが配置されているコンテナまたはコンポーネントを基準にした座標に従います。

    • 例)画面に対する相対位置(100, 200)に基づいてコンテナ内のx座標を取得する場合は、次の関数を使用します。
    • Example:toLayerX(Container 1, 100, 200)画面の位置x = 100を基準にして、コンテナ1のx座標を取得します。
  • toLayerY(containerName: LAYER, x: NUMBER, y: NUMBER)NUMBER

    コンテナレイヤーまたはコンポーネントを基準にしてy座標を計算します。 コンテナまたはコンポーネント内のレイヤーは、それが配置されているコンテナまたはコンポーネントを基準にした座標に従います。

    • たとえば、画面(100, 200)に対する相対位置に基づいてコンテナ内のy座標を取得する場合は、次の関数を使用します。
    • Example:toLayerY("Container 1", 100, 200)y-coordinate relative to Container 1 based on the y-coordinate of 200 relative to the screen
  • toScreenX(containerName: LAYER, x: NUMBER, y: NUMBER)NUMBER

    画面を基準にしてx座標を計算します。 コンテナまたはコンポーネント内のレイヤーは、それが配置されているコンテナまたはコンポーネントを基準にした座標に従います。

    • たとえば、相対的なコンテナレイヤーまたはコンポーネントの位置(10, 20)に基づいて画面のx座標を取得する場合は、次の関数を使用します。
    • Example:toScreenX("Container 1", 10, 20)コンテナ1コンテナレイヤーx = 10の位置を基準にして、画面のx座標を取得します。
  • toScreenY(containerName: LAYER, x: NUMBER, y: NUMBER)NUMBER

    画面を基準にしてy座標を計算します。 コンテナまたはコンポーネント内のレイヤーは、それが配置されているコンテナまたはコンポーネントを基準にした座標に従います。

    • たとえば、相対的なコンテナレイヤーまたはコンポーネントの位置(10, 20)に基づいて画面のy座標を取得する場合は、次の関数を使用します。
    • Example:toScreenY("Container 1", 10, 20)コンテナ1コンテナレイヤーy = 20の位置を基準にして、画面のy座標を取得します。
Back To Top