var string = abc123;
string.split(*POSITION=3)???
有沒有辦法將這個字符串拆分爲一個字符串數組,即[abc,123]
? split
方法是否正確使用?Javascript拆分方法
var string = abc123;
string.split(*POSITION=3)???
有沒有辦法將這個字符串拆分爲一個字符串數組,即[abc,123]
? split
方法是否正確使用?Javascript拆分方法
我想說的split
方法不在這裏使用了正確的事情,因爲它的目的是段基於一定字符的字符串。
你當然可以寫自己的功能,當然:
function partition(str, index) {
return [str.substring(0, index), str.substring(index)];
}
// results in ["123", "abc"]
var parts = partition("123abc", 3);
如果你想寫"123abc".partition(3)
相反,你可以做到這一點通過擴展String.prototype
:
String.prototype.partition = function(index) {
return [this.substring(0, index), this.substring(index)];
};
就個人而言,雖然,我建議避免這種類型的搜索(如果你想了解其他人對該主題的評論,可以在網上搜索「用JavaScript擴展內置對象」)。
沒有,但它是微不足道的實施是:
function splitn(str, n){
var r = [], offset = 0, l = str.length;
while(offset < l) {
r.push(str.substr(offset, n));
offset += n;
}
return r;
}
然後:
var string = "abc123";
console.log(splitn(string, 3));
//["abc", "123"]
假設你想要類似的功能str_split
也許用一個簡單的RegExp
比賽?
var arr = "abc123".match(/^([a-z]+)(\d+)$/i);
arr.shift();
console.log(arr);
var arr = "this is a test".match(/.{1,3}/g);
split()需要一個分隔符才能工作。 – nickd