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

时间:2014-10-19 14:57:30

标签: javascript

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

例如,在字符串' 123456'中生成两个变量t1t2。并将其拆分为字符 3 ,以便t1的值为' 123' t2的价值是' 456' ...

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

6 个答案:

答案 0 :(得分:1)

你可以这样做。

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

答案 1 :(得分:1)

我建议:

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

参考文献:

答案 2 :(得分: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'

答案 3 :(得分:1)

如果你的意思是第3个字符:

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

答案 4 :(得分:0)

尝试

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)

答案 5 :(得分:-1)

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);