JavaScript中split()和join()方法的使用
来源:互联网 发布:签章软件下载 编辑:程序博客网 时间:2024/06/07 14:43
按照惯例,每天一道算法题。今天遇到的是这样:
使用给定的参数对句子执行一次查找和替换,然后返回新句子。
第一个参数是将要对其执行查找和替换的句子。
第二个参数是将被替换掉的单词(替换前的单词)。
第三个参数用于替换第二个参数(替换后的单词)。
注意:替换时保持原单词的大小写。例如,如果你想用单词 "dog" 替换单词 "Book" ,你应该替换成 "Dog".
不得不说的一点是,玩JavaScript的算法题,你不会str.split()和arr.join()方法,那几乎是没法玩的。虽然在实际生产中这些原生方法不见得有太大用途。
1. split()
先来看看W3C上的文档介绍:
定义和用法
split() 方法用于把一个字符串分割成字符串数组。
语法
stringObject.split(separator,howmany)
然而,这并不是重点,重点是:
注释:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
没错,结合基本用法和特殊用法,我们就可以使用:
str.split(" ")——把一个句子或段落按空格分割成一个个单词的数组,再依靠
str.split("")——把每个单词分割成一个个字母。
2. join()
国际惯例看文档:
定义和用法
join() 方法用于把数组中的所有元素放入一个字符串。
元素是通过指定的分隔符进行分隔的。
语法
arrayObject.join(separator)
返回值
返回一个字符串。该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。
好了,这你就知道了,当你用arr.join("")时,就可以将数组恢复成字符串形式。
也就是说:
split()与join()方法是完全相反的,借由两个方法可以实现字符串和数组之间的自由操作。
function myReplace(str, before, after) { str = str.split(" "); var bef = before.split(""); var aft = after.split(""); if (bef[0].match(/[A-Z]/)!==null){ aft[0] = aft[0].toUpperCase(); after = aft.join(""); } for(var i = 0; i<str.length; i++){ if(str[i] === before){ str[i] = after; } } str = str.join(" "); return str;}myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
阅读全文
0 0
- JavaScript中split()和join()方法的使用
- python join 和 split方法的使用
- JavaScript split()方法和join()方法
- python的split方法和join方法的交互使用
- javascript中的split()和join()方法
- javascript中的split()和join()方法
- Python中.split()和.join()方法对比
- join()和split()方法
- python中join()和split()的用法
- python 中join 和 split的用法
- JavaScript split() 方法的使用
- javascript-string类型的方法(match,replace,split,concat+join)
- Ruby split 和join方法
- python join 和 split方法
- JavaScript方法join()、splice()、slice()、split()
- join和split的用法
- split()和join()的区别
- JavaScript中使用join()方法分隔字符串
- git的使用3(创建git仓库)
- 如何使用Google浏览器自带的调试工具
- An SPI class of type org.apache.lucene.codecs.Codec with name 'Lucene62' does not exist
- 【22】Bootstrap — 巨幕
- emacs快捷键-缓冲区的操作
- JavaScript中split()和join()方法的使用
- 【腾讯Bugly干货分享】深入理解 ButterKnife,让你的程序学会写代码
- 混合模式
- tcpdump命令使用
- HDU 6097 Mindis(计算几何)
- JavaGC
- java常用api总结
- TextRank算法
- Android 一个app启动另一个app