將普通的數字轉為color值,java和javascript的區別
最近的一個需求是這樣的,前段可以動態配置資料顏色儲存起來,在展示的時候再將color讀出來,但是儲存的時候儲存的是數字,例如:
16776960、16776980等等這樣的數字,在java中將這些數字轉為Color值還是很方便的,
程式碼如下:
Color c = new Color(16776960);
System.out.println("ss:"+"#" + Integer.toHexString(c.getRGB()).toString().substring(2));
這個時候得到的就是一個類似:#AAAAAA這樣的一個字串,這樣這個時候就比較好用了,
但是最近使用nodejs來做這件事的時候,發現不是這樣的
js程式碼:
var value = parseInt(-16776960);
var val = 0xff000000 | value;
val = val.toString(16).substring(1);
var str = '';
//當返回的顏色值沒有達到六位時
if (val.length < 6) {
var i = 6 - val.length;
for (var t = 0; t < i; t++) {
str += '0';
}
}
console.log('color:' + '#' + str + val);
現在這兩段程式碼的結果是一樣的,在java中在使用new Color(16776960)這個構造方法的時候執行:value = 0xff000000 | rgb;
所以在js中我也使用了這個方法,但是java在構造Color物件的時候做了處理是,所以在js中要使用對應的數字的相反數,這個時候獲取的color字串就是
一樣的了。
相關文章
- javascript中將數字轉為字串的方法JavaScript字串
- php之普通變數賦值、物件賦值、引用賦值的區別PHP變數賦值物件
- 將nan, inf轉為特定的數字NaN
- 將數值轉換為字串的函式字串函式
- javascript原始值和引用值型別及區別JavaScript型別
- JavaScript 字串轉換數值型別JavaScript字串型別
- java將IP地址轉換為數字以及逆向轉換Java
- java 將物件集合轉為欄位值的 listJava物件
- 原子鎖和普通鎖的區別
- Java中將電話號碼轉換為數字Java
- PHP 將數字轉換為漢字PHP
- 什麼是數字化和數字化轉型?區別在哪裡?
- JavaScript中==和===的區別JavaScript
- JavaScript中for in 和for of的區別JavaScript
- Thymeleaf將字串轉換為數字字串
- utils公共方法:將數字轉為漢字
- javascript 將變數值作為物件屬性 獲取物件對應的值JavaScript變數物件
- 智慧指標和普通指標的區別指標
- 伺服器硬碟和普通硬碟的區別伺服器硬碟
- JavaScript map和reduce的區別JavaScript
- javascript push 和 concat 的區別JavaScript
- JavaScript之number型別的數值轉換成某某進位制JavaScript型別
- 為什麼使用型別化陣列來進行位元組操作而不是普通的 javascript 數字陣列型別陣列JavaScript
- etf跟普通基金有什麼不同?etf和普通基金的區別
- SurfaceView和普通view的區別及簡單使用View
- # 普通函式和箭頭函式的區別函式
- Oracle普通檢視和物化檢視的區別Oracle
- DecimalFormat數字格式化用法“0”和“#”的區別DecimalORM
- JavaScript 獲取指定區間的數字JavaScript
- 【Java】equals 和 == 的區別Java
- JavaScript - 變數、值、型別JavaScript變數型別
- PHP將整形數字轉為Excel下標PHPExcel
- Java 將Word轉為HTML的方法JavaHTML
- Java 將Excel轉為SVG的方法JavaExcelSVG
- java將物件轉為json的方式Java物件JSON
- 深度剖析功率電感和普通電感的區別
- javascript中break和continue的區別和作用JavaScript
- CAD的ShowDialog與普通ShowDialog的區別
- 華為的價值主張帶給施工企業數字化轉型的價值思考