if - else 문
// JavaScript
if (number < 3) {
console.log("3보다 작음")
} else {
console.log("3보다 크거나 같음")
}
// Swift
if number < 3 {
print("3보다 작음")
} else {
print("3보다 크거나 같음")
}
switch 문
javascript | swift | |
switch문 | switch (food) { case "떡볶이": console.log("떡볶이 주문"); break; default: break; } |
switch food { case "떡볶이": print("떡볶이 주문") default: print("없음") } |
여러 조건의 case | switch (food) { case "떡볶이1": case "떡볶이2": console.log("떡볶이 주문"); break; default: break; } |
switch food { case "떡볶이1", "떡볶이2": print("떡볶이 주문") default: print("없음") } |
fallthrough (매칭된 값에 대한 고려없이 무조건 다음블럭 실행) |
위 case "떡볶이1", "떡볶이2" 동일한 실행 코드가 이에 해당 | switch food { case "떡볶이": print("떡볶이 주문") fallthough case "떡볶이": print("떡볶이 주문") default: print("없음") } |
Swift의 switch 문에서의 바인딩
var num = 3
switch num {
case let a:
print("숫자 \(a)")
default:
break
}
- where 키워드는 조건을 확인하는 키워드인데 switch에 응용 시 함께 사용됨
case에 조건을 확인하고 싶을때는 아래처럼 바인딩을 해서 사용해야함
switch num {
case let n where n <= 5:
print("5이하 숫자 \(n)")
default:
print("그 외")
}
Swift만의 guard문
- if문은 여러개의 조건이 있을 때 코드의 가독성이 문제가 되는데 이를 극복하고자 나온 문법
- if문에서 else문이 먼저 등장하는 것이라고 생각하면 쉬움
- 실무에서 early exit을 위해 if(!false조건) return을 사용하는 경우가 많은데, 그때 사용을 위한 것
// 조건 : name을 5글자 이상 입력해야하는 조건 체크일 경우
// if문
func checkVerified(name: String) -> Bool {
if name.count < 5 {
return false
} else {
return true
}
}
// guard문
func checkVerified(name: String) -> Bool {
guard name.count >= 5 else {
return false
}
return true
}
728x90
'FRONT-END > iOS' 카테고리의 다른 글
자바스크립트와 비교하며 Swift 공부하기 - 어트리뷰트 키워드편 (0) | 2023.07.07 |
---|---|
자바스크립트와 비교하며 Swift 공부하기 - 반복문편 (+print option) (0) | 2023.07.05 |
자바스크립트와 비교하며 Swift 공부하기 - 튜플편 (0) | 2023.07.04 |
자바스크립트와 비교하며 Swift 공부하기 - 연산자편 (0) | 2023.07.03 |
자바스크립트와 비교하며 Swift 공부하기 - 변수와 데이터 타입편 (0) | 2023.07.03 |
댓글