iT邦幫忙

2022 iThome 鐵人賽

DAY 5
0

本篇文章將會介紹JavaScript字串

  • 字串是什麼,如何使用
  • 字串連接、索引、取區間中的值……等語法
  • 樣板字面值
  • 轉義字符

字串 string

當你再JavaScript輸入文字時不同於數字直接輸入,字串需要以一組' '(單引號)," "(雙引號)包住,而在輸入時需保持一致、不可混用,若混用時將會收到錯誤訊息。

console.log('我是使用單引號的字串'); // 我是使用單引號的字串
console.log("我是使用雙引號的字串"); // 我是使用雙引號的字串

若單雙引號混用則會收到錯誤的訊息

console.log('我單雙引號混用"); // 錯誤

字串連接

若在JavaScript中要將字串連接非常簡單,可以透過+的字符連接字串。

"我"+"想要"+"睡覺" // 我想要睡覺

再透過一個比較來看看了解字串連接:

"我今年 + 5*1"+"歲" // 我今年 + 5*1歲
"我今年" + 5*1 + "歲" // 我今年5歲

從上面的敘述方式可以發現只要是在引號中的內容皆會被視為字串,即便輸入數字也不會進行運算。

若在這邊加上變量

let name = "小狗";
let doSomething = "睡覺";
name + "想要" + doSomething + 10 + "分鐘" // 小狗想要睡覺10分鐘

字串索引

在輸入一大串字串並想索引單個字符時該如何使用呢?假設輸入一個字串”今天颱風天停班,我要睡一整天”想要取他的第5個字,我們就可以透過索引的方式呈現

let today = "今天颱風天停班,我要睡一整天";
today[5]; // 停

這邊可以發現輸入5卻索引到第6個字”停”,這是因為JavaScript在計算時是從0開始做計算因此第0位字為"今”以此類推,變可得出第5位值。

簡單介紹幾種可以用在字串的屬性如下

區間內的值

使用.substring(起始,結束)

let today = "今天颱風天停班,我要睡一整天";
today.substring(0,7) // 今天颱風天停班

最後回返的值就會式0~7之間的6個字

計算長度

需要計算字串內容長度時,可以使用.length的語法

let today = "今天颱風天停班,我要睡一整天";
today.length // 14

移除空白

let today = "   今天颱風天停班,我要睡一整天";
today.trim() // 今天颱風天停班,我要睡一整天

其他補充:

.toUpperCase //大寫
.toLowerCase //小寫
.charAt(數字x) //回傳字串第x個字
.indexOf("字元") //回傳字元序位

樣板字面值

在ES6中有更新「樣板字面值」寫法可以省去許多加號

let name = "小狗";
let age = 18;
//let content = "哈囉我是"+name+",我今年"+age+"歲";
let content = `哈囉我是${name},我今年${age}歲`; // 使用反引號 於變數時使用${ }
console.log(content) //哈囉我是小狗,我今年18歲

轉義字符

若在字串中需使用引號時,該怎麼辦呢?若直接加上引號會發生錯誤的情況,因此可使用轉義字符,讓引號順利呈現。

"我想要點一個,"麥脆雞套餐"" // 錯誤
"我想要點一個, \"麥脆雞套餐\"" // 我想要點一個, "麥脆雞套餐"
代碼 輸入
\ \(反斜杠)
" ''(雙引號)
' '(單引號)
\n 換行
\t 制表

我是一個剛開始學習JS的小白,若有問題歡迎指教討論唷~~(=^-ω-^=)


上一篇
【Day4】數字number、註解comments
下一篇
【Day6】布林、null、undefined
系列文
喜歡打程式嗎?從JavaScript基礎來進行興趣初探!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
yoichi
iT邦新手 5 級 ‧ 2022-09-12 12:18:29
.toUpperCase //大寫
.toUpperCase //小寫 <--應該為.toLowerCase
.charAt(數字x) //回傳字串第x個字
.indexOf("字元") //回傳字元序位
Yumy iT邦新手 4 級 ‧ 2022-09-12 20:53:01 檢舉

沒有注意到哈哈哈~~感謝糾正~

我要留言

立即登入留言