2012-06-16 3 views
0

как разделить индекс массива .. то есть пример кодаКак разделить индекс массива

var parts = currentVal.split(" "); 
var datePart = parts.splice(0,1); 
alert("Date: " + datePart); 
var timePart = parts.join(' '); 

здесь я проверки регулярное выражение даты и времени. вар DATEPART является индексом массива, теперь я хочу разделить DatePart ....

var parts1 = datePart.split('/'); 
parts1.date = parseInt(parts1[0]); 
parts1.month = parseInt(parts1[1]); 
parts1.year = parseInt(parts1[2]); 

но он показывает неперехваченное тип ошибки, их не существует метода раскола(); Может ли кто-нибудь помочь мне, как я могу разделить дату, месяц, год.

+0

Что такое currentVal? Покажите остальную часть кода. – j08691

ответ

0

Если вы пытаетесь просто проверить независимо от того, соответствует ли строка действительной дате или нет, я лично рекомендовал бы магический объект Date, который поддерживает javascript. Через какое-то волшебство он может читать дату почти в любом формате, который вы выбрасываете на него, и если это недопустимая дата, он будет оценивать строку Invalid Date.

Так, чтобы проверить, если currentVal является действительной датой, сделайте следующее:

if (new Date(currentVal) == 'Invalid Date') { 
    ... // The date is invalid 
} else { 
    ... // The date is valid 
} 

С другой стороны, если вам нужно использовать конкретное регулярное выражение для проверки даты, вы можете либо сделать что-то вроде

var parts = currentVal.split(' '); 
var dateParts = parts[0].split('/'); 
var timePart = parts[1]; // Maybe you want to split this as well? 

И это оставит DateParts как массив, содержащий месяц, день и год.

0

На самом деле функционирует сращивания возвращает массив удаленных элементов, поэтому для решения проблемы вам нужно просто применить разделение на первый элемент массива DATEPART:

var parts1 = datePart[0].split("/"); 
+0

hai спасибо, что он работает – jack