---
description: 可以拿來問面試官
---

# 常見 Edge Case

[https://www.udemy.com/course/js-algorithms-and-data-structures-masterclass/learn/lecture/11172596#overview](https://www.udemy.com/course/js-algorithms-and-data-structures-masterclass/learn/lecture/11172596#overview)

* 負數
* 有無空值
* input 值是否會重覆  eg. \["practice", "makes", "perfect", "coding", "makes"]
* 是否排序
* 排序是小到大 (ascending order)，還是大到小 ( decreasing order)
* 是否會有兩個以上答案
* 會有 leading zero 嗎? ex 03, 04
* 字串有無大小寫之分 (case sensitive ?)

## Array

```
['Bob', 'Ben', 'Tim', 'Jane', 'John']
```

* 有沒有空字串&#x20;

```javascript
items = ['Bob', 'Ben', '', '', 'John']
// 先篩掉
items.filter((item) => !!item);
```



```javascript
是不是只有一個
items = ['Bob']
 if (items.length === 1) {
    return items[0];
  }

是不是空陣列
items = []
if (!items || items.length === 0) {
    return "";
}

```
