存盤一張圖片,常見兩種思路:
- 存盤 寬高、每個像素的 RGBA 值——位圖
- 存盤 寬高、每個幾何圖形——矢量圖
一張圖片,如果幾何圖形關系明確,用矢量圖來存盤,不但空間占用少,而且資訊比位圖全,因為位圖沒有表達出幾何圖形的關系,在縮放時位圖只好失真,
同理,存盤一系列資料時:
-
如果不知道資料的關系,我們只好 像位圖一樣 把所有資料老老實實地存下來:
[1, 2, 3, 5, 6]; -
如果知道資料的關系,我們就可以只存資料的關系,
例如用Generator存盤一個斐波那契數列:function* fibGenerator() { let a = 1, b = 1; yield a; yield b; while (true) { [a, b] = [b, a + b]; yield b; } }
在編程時,多數情況下我們用第一種方式存盤資料,例如用陣列存下所有資料,但有時我們也需要使用第二種方式,因為我們不知道需要多少資料,有時候是真的不知道;有時候是不想知道,比如為了解耦,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/30998.html
標籤:其他
上一篇:秒秒鐘破解eval加密
