拆分字符串然后访问数组

时间:2010-10-05 14:48:17

标签: javascript jquery html

Javascript和jQuery的新手,所以我认为这是一个非常简单的问题。

我有一个日期,我想分成一个字符串,然后打印出数组。

var date = "12/10/2010";
var dateArray = date.split(/);

$('#printbox').html($(dateArray[0]));

<span id="printbox"></span>


编辑:问题是,我如何将“12/10/2010”拆分成这样的数组:

Array[0] = 12
Array[1] = 10
Array[3] = 2010

如何将它们打印到HTML?

6 个答案:

答案 0 :(得分:9)

string.split函数的第一个参数应该是字符串或正则表达式:

var date = "12/10/2010";
var dateArray = date.split("/");

// dateArray[0] == 12
// dateArray[1] == 10
// dateArray[2] == 2010

// Now use the array to print out whichever way you want (jQuery.html(values))...

答案 1 :(得分:2)

var date = "12/10/2010";
var dateArray = date.split('/');

$('#printbox').html(dateArray[0]); // it displays 12 in printbox
$('#printbox').html(dateArray[1]); // it displays 10 in printbox
$('#printbox').html(dateArray[2]); // it displays 2010 in printbox

答案 2 :(得分:1)

对于分裂你几乎就在那里:)

var dateArray = date.split("/");

如果您想使用jQuery,可以使用each方法。

$.each(dateArray, function(index, value) { 
  // print out here
});

这构造了一个迭代数组元素的循环。您可以通过value变量访问此元素。

答案 3 :(得分:1)

var date = "12/10/2010";
var dateArray = date.split('/');

// dateArray => ['12', '10', '2010']

如果你想使用jQuery,你可以使用每个函数:

$.each(dateArray, function (index, value) {
    $('#printbox').append(value);
});

在较新的浏览器中还有一个.forEach方法:

dateArray.forEach(function (value) {
    document.getElementById('printbox').
        appendChild(document.createTextNode(value));
});

较旧的浏览器可以通过Array.prototype:

获得此方法
if (!(Array.prototype.forEach === 'function')) {
    Array.prototype.forEach = function (fn) {
        for (var i = 0, l = this.length; i < l; i += 1) {
            fn(this[i]);
        }
    };
}

答案 4 :(得分:0)

var date = "12/10/2010";
var dateArray = date.split(/\//); // have to quote regular expressions with /

document.write; // this does nothing

$('#printbox').html(dateArray[2] + '-' + dateArray[0] + '-' + dateArray[1]); // do what you want here. The code I provided should print 2010-12-10

答案 5 :(得分:0)

var date = "12/10/2010";
var dateArray = date.split('/');

var year = dateArray.splice(2,1);
dateArray[3] = year;

应该给你

Array[0] = 12
Array[1] = 10
Array[3] = 2010

但是为什么你需要第四把钥匙的年份我不知道。 (也从第三个中删除,所以你不会结束两年)