数字を簡単に変換:強化されたStringコマンドとNumコマンド

2進数や16進数のような異なる基数での数値を扱う場合、数値を文字列に変換したり、あるいはその逆を行うというのはよくある作業です。4D 21では StringNum コマンドが強化され、これらの変換がより強力になりました。

数値を任意の基数の文字列に変換する

String コマンドは、2から36までの任意の基数の整数から文字列への変換をサポートするようになりました。これにより、2進数、8進数、10進数、16進数、およびそれ以上の基数での値を簡単に表現できるようになりました。

var $result := String(6; 2)
// "110" — 2進数で表した 6

$result := String(254; 16)
// "fe" — 16進数で表して 254

$result := String(14256; 36)
// "b00" — 36進数で表した 14256 

文字列を整数に変換

Numコマンドは2~36の任意の基数を使用して文字列を数値に変換することをサポートするようになりました。これは16進数や2進数の入力を扱う場合に特に便利です。

var $result:=Num("110";2) 
// $result = 6 
$result:=Num("fe";16)
// $result = 254

$result:=Num("b00";36)
// $result = 14256

注意Numは基底が指定されていない場合は従来の4D アルゴリズムを使用し、基底が指定されている場合はECMAScript アルゴリズムを使用するため、1e+25やそれ以上などの非常に大きな数では結果に差異が出る場合があります。

結論

行おうとしていることが、開発者ツールの構築、プロトコルのデバッグ、あるいは単により読みやすい形式での数値表示であろうと、これらの改善によりそれらは柔軟でコントロールしやすくなりました。4D ネイティブで、数値ベースの切り替え、ユーザー入力の検証、16進数や2進数のようなフォーマットでのデータのシリアライズが簡単にできるようになりました。

Fabrice Mainguené
- Product Owner -Fabrice Mainguenéは、2016年11月に4D Programチームに参加しました。プロダクトオーナーとして、彼はユーザーストーリーを書き、それを機能仕様に変換する役割を担っています。CNAMでコンピュータサイエンスの学士号を取得した後、FabriceはWindev開発者として小さなソフトウェア出版社に入社しました。その後、彼は産業および貿易分野のさまざまな企業で、Windev および Web 開発者として、また新機能の技術アドバイザーとして働きました。