理解しました>>符号付き右シフト、なぜ parseInt(,16) が必要なのですか? >>バイナリデータの右シフトではないでしょうか? 。次に、どのようなベースに変換されるかに関係なく、parseInt を解析します。バイナリ データは変更されないままにする必要があります。 なぜ 16 ビット移動するのでしょうか。 。 「FFFFFF」は6バイト48ビットではないでしょうか? 。
光阴似箭催人老,日月如移越少年。
parseInt('hexStr', 16) この文は、16 進数を解析することにより、16 進数を含む文字列を Int 数値型に変換することを意味します。
なぜ parseInt(,16) なのか
「FFFFFF」は単なる文字列であり、右シフト演算には数値が必要です。
次に、どのようなベースに変換されるかに関係なく、parseInt を実行します。バイナリ データは変更されないままにする必要があります。
「FFFFFF」を例にとると、16 進数以下には F がないため、NaN になります。16 進数以上の値ではキャリーが異なります。
なぜモバイル 16 ビットなのか
各RGBカラー値は0~255で、8ビットを占めます。 R 値を取得するには、16 ビット右シフトして G と B を削除します
parseInt('hexStr', 16) この文は、16 進数を解析することにより、16 進数を含む文字列を Int 数値型に変換することを意味します。
数値型のみをシフトできます。「FFFFFF」は単なる文字列であり、右シフト演算には数値が必要です。
「FFFFFF」を例にとると、16 進数以下には F がないため、NaN になります。16 進数以上の値ではキャリーが異なります。
各RGBカラー値は0~255で、8ビットを占めます。 R 値を取得するには、16 ビット右シフトして G と B を削除します