JavaScript将字符串按字符数拆分为两个变量

JavaScript split string in to two variables at character by number

本文关键字:变量 两个 拆分 字符串 字符 JavaScript      更新时间:2023-09-26

如何在数字定义的特定点拆分字符串?

在示例中,从字符串"123456"生成两个变量t1t2,并将其拆分为字符3,因此t1的值为"123",t2的值为为"456"。。。

var s0 = '123456';
console.log(s1);//123
console.log(s2);//456

我建议:

var s0 = '123456',
    t1 = s0.substring(0, s0.indexOf(3) + 1),
    t2 = s0.substring(s0.indexOf(3) + 1);

参考文献:

  • String.prototype.indexOf()
  • String.prototype.substring()

如果您指的是第三个字符:

var ch = 3;
var s0 = "123456";
var s1 = s0.substr(0,ch); // will be '123'
var s2 = s0.substr(ch);   // will be '456'

您可以这样做。

var s0 = '123456';
var arr = s0.split('3');
var t1 = arr[0] + '3', t2 = arr[1];

类似于:

var foo = '123456'
   ,bar = [foo.slice(0,3), foo.slice(3)];
//=> bar now ["123", "456"]

扩展String prototype:

String.prototype.splitAt = function(n) {
  return n && n < this.length 
         ? [this.slice(0,n), this.slice(n)] 
         : this;
}
// usages
'123456'.splitAt(3);  //=> ['123', '456']
'123456'.splitAt(2);  //=> ['12', '3456']
'123456'.splitAt(12); //=> '123456'
'123456'.splitAt();   //=> '123456'

尝试

var s0 = "123456"
, s1 = s0.slice(0, 3); // first 3 characters in string , `123`
, s2 = s0.slice(- (s0.length - s1.length) ); // remainder of string , `456`(+)
console.log(s0, s1, s2)
var s = '123456';
var sos = 3;//number to split by
var t1 = '';
var t2 = '';
for (var i = 0; i < s.length; i++)
{
 if (i<sos) {t1 += s[i];}
 else {t2 += s[i];}
}
console.log('t1 = '+t1);
console.log('t2 = '+t2);