Code Explainers
Code explainers tagged #formatting
typescript
type CurrencyFormatOptions = { locale?: string; currency: string; showDecimals?: boolean;
Caching Intl.NumberFormat for currency
memoization
internationalization
caching
Intermediate
9 steps
javascript
const UNITS = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB']; export function formatBytes(bytes, { decimals = 1, binary = false } = {}) { if (!Number.isFinite(bytes)) {
Formatting byte counts into human units
logarithms
formatting
default-parameters
Intermediate
8 steps
rust
use std::fmt; #[derive(Clone, Copy, PartialEq, Eq)] pub struct Money {
Formatting money with Rust's Display trait
trait-implementation
integer-arithmetic
enums
Intermediate
10 steps
ruby
require "time" require "tzinfo" module TimeConverter
Converting timestamps across time zones with TZInfo
timezones
iso8601
parsing
Intermediate
8 steps
java
import java.time.Instant; import java.time.ZoneId; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter;
Converting timestamps across time zones in Java
date-time
time-zones
instant
Intermediate
6 steps
ruby
module DurationFormatter UNITS = [ ['week', 604_800], ['day', 86_400],
Turning seconds into human-readable durations in Ruby
greedy-decomposition
modular-arithmetic
formatting
Intermediate
7 steps
go
package geometry import "fmt"
Implementing fmt.Stringer in Go
interfaces
stringer
composition
Beginner
5 steps