Не делая так много манипуляций со строками, вы можете сделать несколько простых математических операций с временными метками.
function getDateRange(&$start, &$end, $date) {
$seconds_in_day = 86400;
$day_of_week = date("w", $date);
$start = $date - ($day_of_week * $seconds_in_day);
$end = $date + ((6 - $day_of_week) * $seconds_in_day);
}
Как программист, рожденный и выросший в мире C и C ++, моим первым ответом на этот вопрос был бы «хранить их адреса в массиве!». Но после пары лет возни с веб-способом вещей я могу дать правильный ответ:
В javascript вы можете напрямую хранить ссылки на объекты в массиве. И нет, xpath для этого не подходит; использовать ссылки проще и лучше. Итак, прямой ответ на ваш вопрос: не существует уникального идентификатора для элемента / узла DOM, кроме самого .
В javascript все объекты передаются по ссылке. Вот пример кода, как это сделать:
var theArray = [];
var theNodeToTraverse = document.getElementById('domelementtosearch');
traverseAndStore(theNodeToTraverse);
function traverseAndStore( node )
{
if( node==null) return;
theArray[ theArray.length ] = node;
for( i=0; i<node.childNodes.length; i++ )
traverseAndStore( node.childNodes[i] );
}