日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Javascript中的字符串拼接

字符串拼接是所有程序設(shè)計(jì)語(yǔ)言都需要的操作。當(dāng)拼接結(jié)果較長(zhǎng)時(shí),如何保證效率就成為一個(gè)很重要的問(wèn)題。本文介紹的是Javascript中的字符串拼接,希望對(duì)你有幫助,一起來(lái)看。

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比懷化網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式懷化網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋懷化地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。

const icon = '';

// 模板字符串
`hi ${icon}`;

// join() 方法
['hi', icon].join(' ');

// Concat() 方法
''.concat('hi ', icon);

// + 操作符
'hi ' + icon;

// RESULT
// hi  

1. 模板字符串

如果你來(lái)自另一種語(yǔ)言(例如Ruby),則將熟悉字符串插值一詞。這正是模板字符串要實(shí)現(xiàn)的目標(biāo)。這是在字符串創(chuàng)建中包含表達(dá)式的一種簡(jiǎn)單方法,該方法簡(jiǎn)潔明了。

const name = 'samantha';
const country = '';

(1) 字符串連接中缺少空格的問(wèn)題

在模板字符串之前,這是我的字符串的結(jié)果

"Hi, I'm " + name + "and I'm from " + country;

? 你發(fā)現(xiàn)我的錯(cuò)誤了嗎?我缺少空格。在連接字符串時(shí),這是一個(gè)非常普遍的問(wèn)題。

// Hi, I'm samanthaand I'm from

(2) 用模板字符串解決

使用模板字符串,可以解決此問(wèn)題。你可以按照你想要的字符串顯示方式編寫。所以很容易發(fā)現(xiàn)是否缺了一個(gè)空格,現(xiàn)在超級(jí)可讀,耶!

`Hi, I'm ${name} and I'm from ${country}`;

2. join()

join 方法合并數(shù)組的元素并返回一個(gè)字符串。因?yàn)樗c數(shù)組一起使用,所以如果要添加其他字符串,它非常方便。

const instagram = '@samanthaming';
const twitter = '@samantha_ming';
const array = ['My handles are ', instagram, twitter];

const tiktok = '@samantaming';

array.push(tiktok);

array.join(' ');

// My handles are @samanthaming @samantha_ming @samanthaming

自定義分隔符

join 的好處在于,你可以自定義組合數(shù)組元素的方式。你可以通過(guò)在其參數(shù)中傳遞分隔符來(lái)實(shí)現(xiàn)。

const array = ['My handles are '];
const handles = [instagram, twitter, tiktok].join(', ');  
// @samanthaming, @samantha_ming, @samanthaming

array.push(handles);

array.join('');

// My handles are @samanthaming, @samantha_ming, @samanthaming

3. concat()

使用 concat,可以通過(guò)在字符串上調(diào)用方法來(lái)創(chuàng)建新字符串。

const instagram = '@samanthaming';
const twitter = '@samantha_ming';
const tiktok = '@samanthaming';

'My handles are '.concat(instagram, ', ', twitter', ', tiktok);

// My handles are @samanthaming, @samantha_ming, @samanthaming

結(jié)合字符串和數(shù)組

還可以使用 concat 將字符串與數(shù)組組合在一起。當(dāng)我傳遞數(shù)組參數(shù)時(shí),它將自動(dòng)將數(shù)組項(xiàng)轉(zhuǎn)換為以逗號(hào)分隔的字符串。

const array = [instagram, twitter, tiktok];

'My handles are '.concat(array);

// My handles are @samanthaming,@samantha_ming,@samanthaming

果您希望格式更好,我們可以使用 join 來(lái)定制分隔符。

const array = [instagram, twitter, tiktok].join(', ');

'My handles are '.concat(array);

// My handles are @samanthaming, @samantha_ming, @samanthaming

4. +操作符

關(guān)于在組合字符串時(shí)使用 + 運(yùn)算符的一件有趣的事情。你可以用來(lái)創(chuàng)建新的字符串,也可以通過(guò)添加現(xiàn)有字符串來(lái)對(duì)其進(jìn)行突變。

(1) 非可變

在這里,我們使用 + 創(chuàng)建一個(gè)全新的字符串。

const instagram = '@samanthaming';
const twitter = '@samantha_ming';
const tiktok = '@samanthaming';

const newString = 'My handles are ' + instagram + twitter + tiktok;

(2) 可變的

我們還可以使用 += 將其附加到現(xiàn)有字符串中。所以如果出于某種原因,你需要一種改變的方法,這可能是你的一個(gè)選擇。

let string = 'My handles are ';

string += instagram + twitter;

// My handles are @samanthaming@samantha_ming

哦,該死的再次忘記了空格??吹搅?連接字符串時(shí)很容易錯(cuò)過(guò)空格。

string += instagram + ', ' + twitter + ', ' + tiktok;
// My handles are @samanthaming, @samantha_ming, @samanthaming

感覺(jué)還是很亂的,我們把 join 扔進(jìn)去吧!

string += [instagram, twitter, tiktok].join(', ');
// My handles are @samanthaming, @samantha_ming, @samanthaming

5. 字符串中的轉(zhuǎn)義字符

當(dāng)字符串中包含特殊字符時(shí),組合時(shí)首先需要轉(zhuǎn)義這些字符。讓我們看一些情況,看看如何避免它們

(1) 轉(zhuǎn)義單引號(hào)或撇號(hào)(’)

創(chuàng)建字符串時(shí),可以使用單引號(hào)或雙引號(hào)。知道了這些知識(shí),當(dāng)你的字符串中出現(xiàn)單引號(hào)時(shí),一個(gè)很簡(jiǎn)單的解決方法就是用相反的方法來(lái)創(chuàng)建字符串。

const happy = ;

["I'm ", happy].join(' ');

''.concat("I'm ", happy);

"I'm " + happy;

// RESULT
// I'm   

當(dāng)然,您也可以使用反斜杠 \ 來(lái)轉(zhuǎn)義字符。但是我發(fā)現(xiàn)它有點(diǎn)難以閱讀,所以我并不經(jīng)常這樣。

const happy = ;

['I\'m ', happy].join(' '); ''.concat('I\'m ', happy);

'I\'m ' + happy; // RESULT // I'm  

由于模板字符串正在使用反引號(hào),因此這種情況不適用于它

(2) 轉(zhuǎn)義雙引號(hào)(“)

類似于轉(zhuǎn)義單引號(hào),我們可以使用相同的方法來(lái)使用相反的引號(hào)。因此,為了轉(zhuǎn)義雙引號(hào),我們將使用單引號(hào)。

const flag = '';

['Canada "', flag, '"'].join(' ');

''.concat('Canada "', flag, '"');

'Canada "' + flag + '"';

// RESULT
// Canada ""

是的,還可以使用反斜杠轉(zhuǎn)義符。

(3) 轉(zhuǎn)義符(`)

因?yàn)槟0遄址褂梅匆?hào)創(chuàng)建其字符串,所以當(dāng)要輸出該字符時(shí),我們必須使用反斜杠對(duì)其進(jìn)行轉(zhuǎn)義。

6. 使用哪種方式?

我展示了一些使用不同方式連接字符串的示例。哪種方法更好取決于所有情況。關(guān)于樣式偏好,我喜歡遵循Airbnb風(fēng)格指南。

因此,模板字符串必勝!

7. 為什么其他方式仍然重要?

知道其他的方法也還是很重要的。為什么這么說(shuō)呢?因?yàn)椴⒉皇敲總€(gè)代碼庫(kù)都會(huì)遵循這個(gè)規(guī)則,或者你可能面對(duì)的是一個(gè)遺留代碼庫(kù)。作為一個(gè)開(kāi)發(fā)者,我們需要能夠適應(yīng)和理解我們所處的任何環(huán)境。我們是來(lái)解決問(wèn)題的,而不是抱怨技術(shù)有多老 除非這種抱怨是配合實(shí)際行動(dòng)來(lái)改善的。那我們就有進(jìn)步


網(wǎng)站名稱:Javascript中的字符串拼接
分享URL:http://www.dlmjj.cn/article/codihgi.html