JavaScript 字符串实用常操纪要

澳门新葡萄京娱乐场 ,JavaScript 字符串用于存款和储蓄和拍卖公事。由此在编排 JS
代码之时她总马首是瞻,在你管理客商的输入数据的时候,在读取或设置 DOM
对象的属性时,在操作 Cookie 时,在改动各类差异 Date
时,诸此等等,繁不能数;而她那满多的 API
呵,总有些令人不愿去回想的欢欣,既然用时常搜,倒不及烂笔头生龙活虎翻,顺路也反映下博客存在的价值,因此就有了这篇记录。

字符串截取
1. substring()

字符串截取

xString.substring(start,end)

1. substring()

xString.substring(start,end)

substring(State of Qatar是最常用到的字符串截取方法,它能够接到四个参数(参数不能够为负值卡塔尔国,分别是要截取的开头地方和竣事地方,它将再次回到一个新的字符串,其剧情是从start处到end-1处的富有字符。若甘休参数(end卡塔尔(قطر‎省略,则象征从start地方平昔截取到结尾。

let str = 'www.jeffjade.com'
console.log(str.substring(0,3)) // www
console.log(str.substring(0))   //www.jeffjade.com
console.log(str.substring(-2))  //www.jeffjade.com (传负值则视为0)

substring(卡塔尔(قطر‎是最常用到的字符串截取方法,它能够吸收接纳四个参数(参数无法为负值State of Qatar,分别是要截取的启幕地方和得了地方,它将赶回叁个新的字符串,其情节是从start处到end-1处的有所字符。若结束参数(end卡塔尔省略,则表示从start地方一向截取到最后。

2. slice()

stringObject.slice(start, end)

slice(卡塔尔国方法与substring(卡塔尔国方法丰裕相仿,它传到的八个参数也各自对应着起来地方和终止地方。而差别在于,slice(卡塔尔国中的参数可以为负值,要是参数是负数,则该参数规定的是从字符串的尾巴初叶算起的职责。也正是说,-1
指字符串的最后一个字符。

let str = 'www.jeffjade.com'
console.log(str.slice(0, 3))    // www
console.log(str.slice(-3, -1))  // co
console.log(str.slice(1, -1))   // www.jeffjade.co
console.log(str.slice(2, 1))    // '' (返回空字符串,start须小于end)
console.log(str.slice(-3, 0))   // '' (返回空字符串,start须小于end)
let str = 'www.jeffjade.com'
console.log(str.substring(0,3)) // www
console.log(str.substring(0)) //www.jeffjade.com
console.log(str.substring(-2)) //www.jeffjade.com (传负值则视为0)

3. substr()

stringObject.substr(start,length)

substr(卡塔尔(قطر‎方法可在字符串中收取从start下标最早的钦点数量的字符。其重返值为叁个字符串,满含从
stringObject的start(满含start所指的字符)处伊始的length个字符。若无一点名
length,那么再次回到的字符串包涵从start到stringObject的末尾的字符。此外借使start为负数,则意味着从字符串尾巴部分起头算起。

let str = 'www.jeffjade.com'
console.log(webStr.substr(1, 3))   // ww.
console.log(webStr.substr(0))      // www.jeffjade.com
console.log(webStr.substr(-3, 3))  // com
console.log(webStr.substr(-1, 5))  // m  (目标长度较大的话,以实际截取的长度为准)

2. slice()

4. split()

str.split([separator][, limit])
  • separator 钦定用来分割字符串的字符(串)。separator
    能够是一个字符串或正则表达式。 假设忽视separator,则赶回整个字符串的数组情势。假若 separator
    是三个空字符串,则 str 将会把原字符串中各样字符的数组方式重回。
  • limit 多个平头,限定再次回到的分开片段数量。split
    方法依然分割每多个精耕细作的 separator,不过回去的数组只会截取最多 limit
    个因素。

let str = 'www.jeffjade.com'
str.split('.')      // ["www", "jeffjade", "com"]
str.split('.', 1)   // ["www"]
str.split('.').join('') // wwwjeffjadecom

话说这一个函数真心好用,超多时候的字符截取要求,正是借助于有个别字符;而上述八个函数都需清楚其岗位。大家本来能够正视 indexOf 等办法获得,很明显那很麻烦;而依附 split 则显得更轻松。

stringObject.slice(start, end)

查找类方法

slice(卡塔尔方法与substring(卡塔尔方法充足形似,它传播的七个参数也分别对应着起来地方和终结地点。而不同在于,slice(卡塔尔国中的参数可以为负值,如若参数是负数,则该参数规定的是从字符串的后面部分开端算起之处。也正是说,-1
指字符串的结尾三个字符。

1. indexOf() & includes()

stringObject.indexOf(searchValue,fromIndex)

indexOf(卡塔尔用来索求钦命的字符串值在字符串中首次面世的岗位。它可以摄取四个参数,searchValue
代表要物色的子字符串,fromIndex
表示查找的开头地方,省略的话则从初始地点打开搜寻。

let str = 'www.jeffjade.com'
console.log(str.indexOf('.'))     // 3
console.log(str.indexOf('.', 1))  // 3
console.log(str.indexOf('.', 5))  // 12
console.log(str.indexOf('.', 12)) // -1

虽然 indexOf()用来索求钦命的字符串值在字符串中第二次面世的职位
,然则无数时候,使用它的风貌在于判别字符串中是还是不是存在钦点的字符串;因而代码就能如此:

if (str.indexOf('yoursPecifiedStr') !== -1) {
    // do something
}

要领会在这里么的情景下,ES6 语言中的includes(State of Qatar就呈现越来越高贵许多;includes() 方法用于剖断叁个字符串是不是被含有在另几个字符串中,倘使是重临true,不然重返false。

str.includes(searchString[, position])

searchString 将在搜寻的子字符串。position 可选。从脚下字符串的哪位索引地点上马搜寻子字符串;默感到0。供给小心的是,includes(卡塔尔(قطر‎ 是分别朗朗上口写的。

'Blue Whale'.includes('blue'); // returns false
'乔峰乔布斯乔帮主'.includes('乔布斯'); // returns true
if (str.includes('yoursPecifiedStr')) {
    // do something(这样写是不是更为人性化?Yeah,这是一个更趋向人性化的时代嘛)
}
let str = 'www.jeffjade.com'
console.log(str.slice(0, 3)) // www
console.log(str.slice(-3, -1)) // co
console.log(str.slice(1, -1)) // www.jeffjade.co
console.log(str.slice(2, 1)) // '' (返回空字符串,start须小于end)
console.log(str.slice(-3, 0)) // '' (返回空字符串,start须小于end)

2. lastIndexOf()

stringObject.lastIndexOf(searchValue,fromIndex)

lastIndexOf(State of Qatar语法与indexOf(卡塔尔相同,它回到的是三个点名的子字符串值末了出现之处,其招来顺序是从后迈入。

let str = 'www.jeffjade.com'
console.log(str.lastIndexOf('.'))     // 12
console.log(str.lastIndexOf('.', 1))  // -1
console.log(str.lastIndexOf('.', 5))  // 3
console.log(str.lastIndexOf('.', 12)) // 12

3. substr()

search()

stringObject.search(substr)
stringObject.search(regexp)

search(卡塔尔(قطر‎方法用于检索字符串中钦点的子字符串,或查究与正则表达式相相配的子字符串。它会回来第三个地位异常的子字符串的起第2地方,如果未有匹配的,则赶回-1。

let str = 'www.jeffjade.com'
console.log(str.search('w'))    // 0
console.log(str.search(/j/g))   // 4
console.log(str.search(/./g))  // 3
stringObject.substr(start,length)

match()方法

stringObject.match(substr)
stringObject.match(regexp)

match(卡塔尔(قطر‎方法可在字符串内搜索钦赐的值,或找到二个或多个正则表明式的极其。

假使参数中盛传的是子字符串或是未有实行全局匹配的正则表明式,那么match(卡塔尔方法会从起头地方实施三次相称,若无相配到结果,则赶回null。不但是会再次回到叁个数组,该数组的第0个元素贮存的是十分文本,除了那些之外,重回的数组还带有三个指标属性index和input,分别代表卓殊文本的起先字符索引和stringObject
的援引(即原字符串卡塔尔(قطر‎。

let str = '#1a2b3c4d5e#';
console.log(str.match('A'));    //返回null
console.log(str.match('b'));    //返回["b", index: 4, input: "#1a2b3c4d5e#"]
console.log(str.match(/b/));    //返回["b", index: 4, input: "#1a2b3c4d5e#"]

假若参数字传送入的是独具全局相配的正则表明式,那么match(卡塔尔国从在那早先地点进行数次优良,直到最后。若无相配到结果,则赶回null。不不过会重返四个数组,数组中贮存全部适合须求的子字符串,並且没有index和input属性。

let str = '#1a2b3c4d5e#'
console.log(str.match(/h/g))     //返回null
console.log(str.match(/d/g))    //返回["1", "2", "3", "4", "5"]

substr(卡塔尔国方法可在字符串中抽出从start下标初始的钦赐数量的字符。其重回值为二个字符串,包蕴从
stringObject的start(包罗start所指的字符)处初阶的length个字符。若无一点点名
length,那么重回的字符串富含从start到stringObject的尾声的字符。别的假如start为负数,则意味着从字符串尾巴部分开端算起。

别的情势

let str = 'www.jeffjade.com'
console.log(webStr.substr(1, 3)) // ww.
console.log(webStr.substr(0)) // www.jeffjade.com
console.log(webStr.substr(-3, 3)) // com
console.log(webStr.substr(-1, 5)) // m (目标长度较大的话,以实际截取的长度为准)

replace()方法

stringObject.replace(regexp/substr,replacement)

replace(卡塔尔方法用来开展字符串替换操作,它能够吸收接纳四个参数,前面二个为被替换的子字符串(能够是正则),前面一个为用来替换的文件。

比方第二个参数字传送入的是子字符串或是未有进展全局相配的正则表明式,那么replace(卡塔尔(قطر‎方法将只举办三次替换(即替换最终边的),重回经过二回替换后的结果字符串。

let str = 'www.jeffjade.com'
console.log(str.replace('w', 'W'))   // Www.jeffjade.com
console.log(str.replace(/w/, 'W'))   // Www.jeffjade.com

设若第叁个参数字传送入的全局匹配的正则表明式,那么replace(卡塔尔(قطر‎将会对适合条件的子字符串进行频仍更改,最终回来经过再三替换的结果字符串。

let str = 'www.jeffjade.com'
console.log(str.replace(/w/g, 'W'))   // WWW.jeffjade.com

4. split()

toLowerCase() & toUpperCase()

stringObject.toLowerCase()
stringObject.toUpperCase()

toLowerCase(卡塔尔方法能够把字符串中的大写字母转变为小写,toUpperCase(卡塔尔国方法能够把字符串中的小写字母调换为大写。

let str = 'www.jeffjade.com'
console.log(str.toLowerCase())   // www.jeffjade.com
console.log(str.toUpperCase())   // WWW.JEFFJADE.COM
str.split([separator][, limit])

模板字符串

以此也是 ES6
才引进进来的新语法,来消除古板出口String模板的不行难题;其功效之强盛,设计之亲昵,着实令人获得超大满足感,好如久旱逢甘霖通常的兴奋。更况且,在当今 MVVM 后面一个框架风行的时代,使用 ES6 语法也是毫无本人体态去挂念宽容性难点,对于作育 Dom Template 更是锦上添花,令人喜爱得舍不得放手。

对此他的应用,阮生机勃勃峰在ECMAScript 6
入门有过详尽的叙说以至示例,在那就不赘述。只要求领悟咱们得以像这么去操作了,试问爽否?

function ncieFunc() {
  return "四海无人对夕阳";
}
var niceMan = "陈寅恪";
var jadeTalk = `一生负气成今日 n ${ncieFunc()} ,
语出 ${niceMan} 的《忆故居》。
`
console.log(jadeTalk)

运营之,Chrome Console 输出结果如下:

生平负气成后天
中国人民解放军第四野战军无人对夕阳 ,
语出 陈寅恪 的《忆故居》。

separator 钦定用来分割字符串的字符(串)。separator
能够是一个字符串或正则表明式。 如果大意separator,则赶回整个字符串的数组方式。假设 separator 是二个空字符串,则
str 将会把原字符串中各样字符的数组情势重回。
limit 五个大背头,节制再次来到的撤销合并片段数量。split
方法还是分割每二个神工鬼斧的 separator,可是回到的数组只会截取最多 limit
个成分。

结合其法

审美 JavaScript 提供的String
Api,依然有蛮多的,也会有稍许放任的,也是有就要以后版本会出去的;这在那之中不乏比超多也挺有用的,比方: charAt(x卡塔尔、charCodeAt(x卡塔尔国、concat(v1,
v2,…卡塔尔(قطر‎、fromCharCode(c1,
c2,…State of Qatar 等等,还应该有 ES6 对字符串的扩充,举个例子 字符串的遍历器接口,repeat(卡塔尔国 等等,那足以参见 ES6-string,这里就没有多少废话。

在实质上代码临盆中,相当多时候必要用这几个提供的中坚措施,来打出生龙活虎套组合拳,以减轻其要求所需。很显然又能够注重 prototype 属性,将自造的各路拳法,其归置于
String
对象,然后天亮啊。这一步就看个人喜好了,这里抛出黄金时代二段,以引大玉。

let str = 'www.jeffjade.com'
str.split('.') // ["www", "jeffjade", "com"]
str.split('.', 1) // ["www"]
str.split('.').join('') // wwwjeffjadecom

字符串反转

String.prototype.reverse = function () {
    return this.split('').reverse().join('')
}

话说那个函数真心好用,比非常多时候的字符截取供给,便是凭仗于某些字符;而以上多少个函数都需精晓其职分。大家本来能够依靠indexOf
等方法获得,很明朗那很麻烦;而依赖 split
则显示更轻巧。
查找类方法
1. indexOf() & includes()

去除空白行

String.prototype.removeBlankLines = function () {
    return this.replace(/(n[st]*r*n)/g, 'n').replace(/^[nrnt]*|[nrnt]*$/g, '')
}
stringObject.indexOf(searchValue,fromIndex)

String转变为数组

1, 转变为风华正茂维数组

情景是依附某子字符串转变,直接就用 split 就好;假诺转变法则不联合,那么请自求多福吧。

let Str = '陈寅恪,鲁迅,钱钟书,胡适,王国维,梁启超,吴宓,季羡林'
let hallAllOfFameArr = Str.split(',')
console.log(hallAllOfFameArr)
// ["陈寅恪", "鲁迅", "钱钟书", "胡适", "王国维", "梁启超", "吴宓", "季羡林"]

2, 转变为二维数组

String.prototype.removeBlankLines = function () {
    return this.replace(/(n[st]*r*n)/g, 'n').replace(/^[nrnt]*|[nrnt]*$/g, '')
}
String.prototype.strTo2dArr = function(firstSplit, secondSplit){
    var contentStr = this.removeBlankLines(),
        contentStrArr = contentStr.split(firstSplit),
        resultArr = contentStrArr.map((element) => {
            return element.split(secondSplit)
        })
    return resultArr
}
var str = `
渺渺钟声出远方,依依林影万鸦藏。
一生负气成今日,四海无人对夕阳。
破碎山河迎胜利,残馀岁月送凄凉。
松门松菊何年梦,且认他乡作故乡。
`
console.log(str.strTo2dArr('n', ','))

运维之,输出结果如下:

[ [ ‘渺渺钟声出远方’, ‘依依林影万鸦藏。’ ],
[ ‘生平负气成后天’, ‘四海无人对老年。’ ],
[ ‘破碎山河迎胜利’, ‘残馀岁月送凄凉。’ ],
[ ‘松门松菊何年梦’, ‘且认异乡作故乡。’ ] ]

抗日战争时代,陈寅恪先生在给傅梦簪的信中,说了这么生机勃勃段话:“弟之个性,非得安眠饱食,不能够创作,非是既富且乐,不可能作诗,平生偶有安眠饱食之时,故偶可为文,而生平从无既富且乐之日,故总做倒霉诗。” 虽是以讥讽的以言说,恐也是寄之感慨的悟道之语。自由独立的经济生活,是自由观念与单身人格的刚强后盾与实际保持。写博这件事儿,也是平等,成天疲于必要之成改,熬时碌碌,生为糊口;偶有的闲时气力,何地是能经得起折腾的?唯是在垒码的空闲,略做笔录,积而成篇。而这番为得的谋生的奋不屑一顾,也是希望以后的某天——能有既富且乐之时,谈那么些想谈的,做那么些想做的事,仅此而已。

indexOf(卡塔尔用来探求钦点的字符串值在字符串中第叁次现身的职位。它能够吸收接纳三个参数,searchValue
代表要搜求的子字符串,fromIndex
表示查找的发端地方,省略的话则从上马地方打开寻找。

let str = 'www.jeffjade.com'
console.log(str.indexOf('.')) // 3
console.log(str.indexOf('.', 1)) // 3
console.log(str.indexOf('.', 5)) // 12
console.log(str.indexOf('.', 12)) // -1

虽然 indexOf()
用来查找钦点的字符串值在字符串中第3回面世的岗位
,然则无数时候,使用它的光景在于剖断字符串中是否存在钦赐的字符串;由此代码就能这么:

if (str.indexOf('yoursPecifiedStr') !== -1) {
// do something
}

要了然在这里么的气象下,ES6
语言中的includes()就展示更典雅多数;includes()
方法用于鉴定叁个字符串是还是不是被含有在另叁个字符串中,假若是回来true,不然重返false。

str.includes(searchString[, position])

searchString 将在搜寻的子字符串。position
可选。从日前字符串的哪位索引地点上马搜寻子字符串;默以为0。须求在意的是,includes()
是分别抑扬顿挫写的。

'Blue Whale'.includes('blue'); // returns false
'乔峰乔布斯乔帮主'.includes('乔布斯'); // returns true

if (str.includes('yoursPecifiedStr')) {
// do something(这样写是不是更为人性化?Yeah,这是一个更趋向人性化的时代嘛)
}

2. lastIndexOf()

stringObject.lastIndexOf(searchValue,fromIndex)

lastIndexOf(卡塔尔(قطر‎语法与indexOf(卡塔尔国相像,它回到的是三个点名的子字符串值最后现身的地点,其寻觅顺序是从后迈入。

let str = 'www.jeffjade.com'
console.log(str.lastIndexOf('.')) // 12
console.log(str.lastIndexOf('.', 1)) // -1
console.log(str.lastIndexOf('.', 5)) // 3
console.log(str.lastIndexOf('.', 12)) // 12

search()

stringObject.search(substr)
stringObject.search(regexp)

search(卡塔尔方法用于检索字符串中钦点的子字符串,或搜求与正则表达式相相称的子字符串。它会重临第二个门户大约的子字符串的起第2位置,若无相配的,则赶回-1。

let str = 'www.jeffjade.com'
console.log(str.search('w')) // 0
console.log(str.search(/j/g)) // 4
console.log(str.search(/./g)) // 3

match()方法

stringObject.match(substr)
stringObject.match(regexp)

match(卡塔尔国方法可在字符串内寻觅钦赐的值,或找到一个或多个正则表达式的非凡。
要是参数中传唱的是子字符串或是未有打开全局匹配的正则表明式,那么match(卡塔尔方法会从最早地方实施贰遍相配,若无匹配到结果,则赶回null。不但是会回到两个数组,该数组的第0个成分寄放的是匹配文本,除外,重回的数组还含有四个对象属性index和input,分别代表相当文本的发轫字符索引和stringObject
的引用(即原字符串卡塔尔。

let str = '#1a2b3c4d5e#';
console.log(str.match('A')); //返回null
console.log(str.match('b')); //返回["b", index: 4, input: "#1a2b3c4d5e#"]
console.log(str.match(/b/)); //返回["b", index: 4, input: "#1a2b3c4d5e#"]

如果参数字传送入的是富有全局相称的正则表明式,那么match(卡塔尔(قطر‎从起先地方张开频仍格外,直到最终。如果未有相配到结果,则赶回null。不但是会重返多个数组,数组中存放全数切合须要的子字符串,况兼未有index和input属性。

let str = '#1a2b3c4d5e#'
console.log(str.match(/h/g)) //返回null
console.log(str.match(/d/g)) //返回["1", "2", "3", "4", "5"]

任何方法
replace()方法

stringObject.replace(regexp/substr,replacement)

replace(卡塔尔方法用来张开字符串替换操作,它能够接到多个参数,前面一个为被调换的子字符串(能够是正则),后面一个为用来替换的文书。
假如第八个参数字传送入的是子字符串或是未有张开全局相配的正则表达式,那么replace(卡塔尔国方法将只实行一遍替换(即替换最前面包车型大巴),再次回到经过一遍替换后的结果字符串。

let str = 'www.jeffjade.com'
console.log(str.replace('w', 'W')) // Www.jeffjade.com
console.log(str.replace(/w/, 'W')) // Www.jeffjade.com

只要第1个参数字传送入的全局匹配的正则表明式,那么replace(卡塔尔国将会对切合条件的子字符串举行一再轮流,最后回来经过三回九转调换的结果字符串。

let str = 'www.jeffjade.com'
console.log(str.replace(/w/g, 'W')) // WWW.jeffjade.com

toLowerCase() & toUpperCase()

stringObject.toLowerCase()
stringObject.toUpperCase()

toLowerCase(卡塔尔方法能够把字符串中的大写字母调换为小写,toUpperCase(卡塔尔方法能够把字符串中的小写字母调换为大写。

let str = 'www.jeffjade.com'
console.log(str.toLowerCase()) // www.jeffjade.com
console.log(str.toUpperCase()) // WWW.JEFFJADE.COM

模板字符串
那么些也是 ES6
才引入进来的新语法,来解决古板出口String模板的不是难题;其意义之强大,设计之亲密,着实令人拿到宏大知足感,好如久旱逢甘霖日常的舒服。更何况,在现今MVVM
前端框架大行其道的时代,使用 ES6
语法也是不用本人体态去担忧包容性难题,对于培育 Dom Template
一发为虎添翼,令人爱怜。
对于她的使用,阮生机勃勃峰在ECMAScript 6
入门有过详细的汇报以至示例,在那就不赘述。只须求知道我们能够像那样去操作了,试问爽否?

function ncieFunc() {
return "四海无人对夕阳";
}
var niceMan = "陈寅恪";

var jadeTalk = `一生负气成今日 n ${ncieFunc()} ,
语出 ${niceMan} 的《忆故居》。
`
console.log(jadeTalk)
运行之,Chrome Console 输出结果如下:
一生负气成今日四海无人对夕阳 ,语出 陈寅恪 的《忆故居》。

整合其法

端详 JavaScript 提供的String
Api,仍然有蛮多的,也许有个别许放弃的,也可能有将要未来版本会出去的;那其间不乏超多也挺有用的,例如:
charAt(x)charCodeAt(x)concat(v1,
v2,…)
fromCharCode(c1, c2,…) 等等,还有 ES6
对字符串的增加,比如 字符串的遍历器接口repeat()
等等,这能够参见
ES6-string,这里就非常少废话。
在骨子里代码生产中,相当多时候必要用那么些提供的大旨方法,来打出生机勃勃套组合拳,以解决其供给所需。很鲜明又有啥不可凭仗prototype
天性,将自造的各路拳法,其归置于 String
对象,然后天亮啊。这一步就看个人喜好了,这里抛出风流倜傥二段,以引大玉。
字符串反转

String.prototype.reverse = function () {
return this.split('').reverse().join('')
}

删去空白行

String.prototype.removeBlankLines = function () {
return this.replace(/(n[st]*r*n)/g, 'n').replace(/^[nrnt]*|[nrnt]*$/g, '')
}

String转变为数组
1, 转化为意气风发维数组
此情此景是基于某子字符串转变,直接就用 split
就好;倘诺调换准绳不归总,那么请自求多福吧。

let Str = '陈寅恪,鲁迅,钱钟书,胡适,王国维,梁启超,吴宓,季羡林'
let hallAllOfFameArr = Str.split(',')
console.log(hallAllOfFameArr)
// ["陈寅恪", "鲁迅", "钱钟书", "胡适", "王国维", "梁启超", "吴宓", "季羡林"]

2, 转变为二维数组

String.prototype.removeBlankLines = function () {
return this.replace(/(n[st]*r*n)/g, 'n').replace(/^[nrnt]*|[nrnt]*$/g, '')
}

String.prototype.strTo2dArr = function(firstSplit, secondSplit){
var contentStr = this.removeBlankLines(),
contentStrArr = contentStr.split(firstSplit),
resultArr = contentStrArr.map((element) => {
return element.split(secondSplit)
})
return resultArr
}

var str = `
渺渺钟声出远方,依依林影万鸦藏。
一生负气成今日,四海无人对夕阳。
破碎山河迎胜利,残馀岁月送凄凉。
松门松菊何年梦,且认他乡作故乡。
`
console.log(str.strTo2dArr('n', ','))

运行之,输出结果如下:
[ [ ‘渺渺钟声出远方’, ‘依依林影万鸦藏。’ ],[ ‘一生负气成今日’, ‘四海无人对夕阳。’ ],[ ‘破碎山河迎胜利’, ‘残馀岁月送凄凉。’ ],[ ‘松门松菊何年梦’, ‘且认他乡作故乡。’ ] ]

猜你喜爱/有用
JavaScript字符串间的可比
JavaScript对象length

发表评论

电子邮件地址不会被公开。 必填项已用*标注