// Dart
int integerNumber = 42; // 정수
double floatingPoint = 3.14; // 부동 소수점
num dynamicNumber = 123; // 동적 숫자 타입
// JavaScript
let number = 42; // 모든 숫자가 64비트 부동 소수점
let integer = Math.floor(42); // 정수 처리는 명시적 변환 필요
주요 차이점:
실제 영향:
// Dart에서 안전한 정수 계산
int largeNumber = 9007199254740992; // 2^53
int result = largeNumber + 1; // 정확한 결과
// JavaScript에서 정밀도 손실
let largeNumber = 9007199254740992; // 2^53
let result = largeNumber + 1; // largeNumber와 동일 (정밀도 손실)
String nonNullable = "Hello"; // null 불가
String? nullable = null; // null 가능
int? nullableNumber; // 자동으로 null로 초기화
void processString(String? text) {
if (text != null) {
print(text.length); // 널 체크 후 안전한 접근
}
}
let text = null; // 모든 변수가 nullable
console.log(text?.length); // 옵셔널 체이닝 필요
// 타입스크립트를 사용하는 경우
let nonNullable: string = "Hello";
let nullable: string | null = null;
주요 차이점: