iT邦幫忙

2023 iThome 鐵人賽

DAY 23
2
Modern Web

GPT 救救我!菜雞小海獺的前端成長之旅系列 第 23

D23 - JS - 基礎 - 其他 - 字串處理 - 1(toString, toUpperCase, toLowerCase, split, join)

  • 分享至 

  • xImage
  •  

從後端收到資訊、或者收到來自使用者的資料時,常會需要對這些資料做處理。
以下介紹一些處理字串的方法。

array.toString()

將陣列內的值取出,用逗號連接並串成一個字串回傳。

// 用法
arr.toString()

說明:
參數:預設不接受任何參數
回傳值:一個取自陣列中元素的新字串

來個練習吧!

以下問題來自 GPT
問題:使用 toString() 方法將一個數字轉換為字串。

const str = 95;
const result = str.toString();
console.log(result); // '95'
console.log(typeof result); // string

toUpperCase()

將字串轉為大寫,並回傳一個新字串

// 用法
str.toUpperCase()

回傳值:一個轉換為大寫的新字串

來個練習吧!

以下問題來自 GPT
基本轉換:
問題:給定一個字串陣列,請將每個字串轉換成大寫並存儲在新的陣列中。

const arr = ["apple", "banana", "cherry"];
const res = arr.map(function toUpper(item) {
  return item.toUpperCase();
});

console.log(res); // [ 'APPLE', 'BANANA', 'CHERRY' ]

toLowerCase()

將指定字串轉換成小寫,並回傳一個新字串

// 用法
str.toLowerCase()

回傳值:一個轉換為小寫的新字串

來個練習吧!
以下問題來自 GPT
實作:驗證輸入是否為小寫字母

const input01 = "abCdE";
const input02 = "abcde";
const input03 = "ABCDE";

function check(str) {
  const lowerStr = str.toLowerCase();

  if (str === lowerStr) {
    console.log("完全為小寫字母");
  } else {
    console.log("不完全為小寫字母");
  }
};

check(input01); // 不完全為小寫字母
check(input02); // 完全為小寫字母
check(input03); // 不完全為小寫字母

split()

藉給予的搜索模式將字串變成一個有序的陣列,並回傳此陣列

// 語法
split(separator)
split(separator, limit)

參數說明

  • separator:描述發生分割的搜索模式。可以是 undefined、字串,最常見的是正規表達式。
  • limit:非負整數,為回傳陣列的子字串數量限制。給予 limit 時,split() 會在指定 separator 出現時分割字串,分割字串內已有 limit 個元素時停止分割。
    • limit=0:回傳 []
  • 回傳值:以原字串出現的每個 separator 位置分割出的字串陣列

來個練習吧!
以下問題來自 GPT
基本:以空格將句子分割

const sentence = "This is a sample sentence";
const arr = sentence.split(" ");
console.log(arr); // 'This', 'is', 'a', 'sample', 'sentence'

join()

將指定的陣列(或類陣列)內容以逗號或指定的 separator 分隔,並回傳一個組合完畢的字串

// 用法
arr.join()
arr.join(separator)

// 幾個例子
const arr = ["hi", "i", "am", "otter"];

console.log(arr.join()); // hi,i,am,otter
console.log(arr.join(",")); // hi,i,am,otter
console.log(arr.join("")); // hiiamotter
console.log(arr.join(" ")); // hi i am otter

參數說明

  • separator:用指定的字串來區隔陣列的每個元素。
    • 預設值:',';若不給值,預設是逗號
    • 空字串:代表合併後的元素間不會有任何字元
    • 給予的值為 undefined 或 null 時,會轉換為空字串
  • 回傳值:經過 separator 組合完成的新字串
    • 若陣列長度為零,回傳的是空字串
    • 若陣列中只有一個元素,separator 不會作用,回傳的是原本的元素字串

來個練習吧!題目 from GPT
練習:以空格連接句子

const arr = ["otters", "are", "the", "cutest", "animals", "in", "the", "world"];
console.log(arr.join(" ")); // otters are the cutest animals in the world

打完收工!
繼續奮戰下一篇 QWQ


參考資料

  • Array.prototype.toString() - JavaScript | MDN,https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Reference/Global_Objects/Array/toString
  • String.prototype.toUpperCase() - JavaScript | MDN,https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/StringtoUpperCase)
  • String.prototype.split() - JavaScript | MDN,https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/split
  • Array.prototype.join() - JavaScript | MDN,https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join

上一篇
D22 - JS - 基礎 - 流程控制 - 循環與迭代
下一篇
D24 - JS - 基礎 - 其他 - 字串處理 - 2
系列文
GPT 救救我!菜雞小海獺的前端成長之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言