iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 7
0

本節大綱

  • JavaScript 的主要資料型別
  • 基本資料的操作物件、陣列以及很好用的型別判斷語法
  • 運算子

JavaScript 的主要資料型別

在 JavaScript 中有數值 (number)、字串 (string)、布林值 (boolean)、特殊型別 (null / undefined)、陣列 (array)、物件 (object)、函式 (function),這些可用的資料型別,在這裡我也不會一一說明這些型別,一來網路有很多寫的比我好的大神在,二來這是很基本的知識,您應該要會,我只分享當您接 API 時,得到一大包的資料時,您就要學會去分辨,請看以下範例表示。
以及要注意的是,觀察這些欄位的值,如果是數值 (number),哪該欄位的名稱,是否一眼就能看出這是數值 (number),依序舉例 ....

{
  "message_code": null,
  "result": {
    "exception": [
      {
        "client_id": "MA3576",
        "comment": "",
        "created_at_utc": "2020/09/21 09:44:57",
        "created_by": "vita@gmail.com",
        "delivery_id": null,
        "delivery_number": null,
        "edi_event_code": "SD",
        "edi_outbound_id": null,
        "edi_sent_at_utc": null,
        "edi_status_code": "NS",
        "event_at": "2020/09/21 12:00:00",
        "event_description": "Shipment Delayed",
        "event_location": "INCHEON",
        "id": 121,
        "impacted_milestone": "AIR_SHIPMENT_ATD_ROUTE2",
        "new_date": "2020/09/28 12:00:00",
        "shipment_id": 379501,
        "shipment_number": "CN120006864",
        "status_description": "Normal Status",
        "updated_at_utc": "2020/09/21 09:44:57",
        "updated_by": "vita@gmail.com",
        "vip_name": "React"
      }
    ]
  },
  "total_item": 1
}

基本資料的操作物件、陣列以及很好用的型別判斷語法

物件

  • 要了解物件的取值有透過.[]兩種方法。
  • 屬性刪除要使用delete,會使用這個方法,我目前是常使用在新建立一筆資料時,要送回去後端時,什麼 key 不能送,哪就會使用delete來幫助我刪除掉不必要的值。
const removeFakeField = (values) => {
  const newValues = _.cloneDeep(values)

  if (!_.isEmpty(newValues.kpi_exception_list)) {
    newValues.kpi_exception_list.forEach((kpiException, index) => {
      delete newValues.kpi_exception_list[index].fakeId // 請注意這就好
    })
  }

  return newValues
}

陣列

  • 陣列有許多很重要的方法,您一定要會,舉例lengthisArraytoStringsortmapfilterreduce 等等... 針對陣列的說明,之後會另外寫一篇文章來詳細介紹。

typeof:型別判斷

  • 這我很常用來呼叫 API 時,所得到的資料,我會驗證一下該欄位給我的值,是哪種型別,才不會發生,如果是物件我會拿陣列的方法來處理,這樣就會報錯。
typeof 'vita' // 'string'
typeof  123   // 'number'
typeof  {}    // 'object'
typeof  []    // 'object'
  • 承上範例,要特別注意的是,使用typeof判斷[]or{}其都會得到object,故在 ES5 之後,陣列新增了一個isArray()的方法來協助我們判斷。
Array.isArray([])        // true
Array.isArray(['vita'])  // true
Array.isArray({})        // false

上一篇
[Day - 6] 回顧 && 實體課好 ? 還是線上課程好 ?
下一篇
[Day - 8] JavaScript 學習筆記 (二)
系列文
為自己而寫,前端工程師之 30 天心得分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言