|
|
|
| var strcoords_x= '35,21,78,65,46,90';
var arrcoords_x=strcoords_x.split(',');
var x_min=Math.min(arrcoords_x); - так не прокатывает, а как надо?
Спасибо. | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 13:47)
| | Math.min(x, y) - Возвращает меньшее из двух чисел.
готовой функции помоему нет... хотя тут могу и ошибится | |
|
|
|
|
|
|
|
для: Crux
(11.04.2008 в 13:59)
| | Пробовал просто отсортировать массив arrcoords_x.sort() и взять первое и последнее значение - тоже не получается.// | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 13:47)
| | var min = arrcoords_x[0];
for (var i = 0;i<arrcoords_x.length;i++)
{
eval('if(arrcoords_x['+i+']<min){min = arrcoords_x['+i+'];});
}
типа задаем переменной МИН первый элемент массива, а потом сравниваем в цикле, если текущий элемент меньше МИН, то он будет МИН. и т.д. до конца. 1 курс)) | |
|
|
|
|
|
|
|
для: Antohins
(11.04.2008 в 14:09)
| | 1 курс чего? Мы "академиев" не кончали... | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 14:14)
| | института... метод самый надежный и безболезненный.. | |
|
|
|
|
|
|
|
для: Antohins
(11.04.2008 в 14:17)
| | а нафига тут эвал если и без него можно преспокойно обойтись? | |
|
|
|
|
|
|
|
для: Lelik
(11.04.2008 в 14:27)
| | Недавно пробовал без евала юзать массив в цикле, у меня что т не получалось, а с евалом все норм, поэтому и написал..
Приведи пожалуйста рабочий код данный мной выше без евала, интересно.. | |
|
|
|
|
|
|
|
для: Antohins
(11.04.2008 в 14:43)
| | Вот рабочий код без eval() :
var strcoords_x= '35,21,78,65,46,90';
var arrcoords_x=strcoords_x.split(',');
var x_min = arrcoords_x[0];
for (var i = 0;i<arrcoords_x.length;i++)
{
if(arrcoords_x[i]<x_min){x_min = arrcoords_x[i];}
}
alert(x_min);
|
| |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 14:52)
| | я тоже так пробовал, но у меня не получалось.. поэтому и прибег к евалу. значт чет накосячил, ща бум исправлять ;] | |
|
|
|
|
|
|
|
для: Antohins
(11.04.2008 в 15:18)
| | Кажись: в самом деле есть косяки в лисе... | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 16:37)
| | может стоит числа сравнивать?
var strcoords_x= '35,21,78,65,46,90';
var arrcoords_x=strcoords_x.split(',');
var x_min = arrcoords_x[0]*1;
for (var i = 1;i<arrcoords_x.length;i++)
{
arrcoords_x[i] = arrcoords_x[i]*1;
if(arrcoords_x[i]<x_min){x_min = arrcoords_x[i];}
}
alert(x_min);
|
| |
|
|
|
|
|
|
|
для: AlexSol
(11.04.2008 в 16:41)
| | зачем тут умножение?
То что начали с первого элемента понятно, сами себя получается сравнивать будем, а причем тут умножение на еденицу? | |
|
|
|
|
|
|
|
для: Antohins
(11.04.2008 в 17:02)
| | переводит строку в число | |
|
|
|
|
|
|
|
для: AlexSol
(11.04.2008 в 17:21)
| | Всё правильно - нужно умножать на единицу, чтобы явно привести к числовому типу. | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 17:48)
| | ну есть еще функции по типу parseInt(), parseFloat(), например... | |
|
|
|
|
|
|
|
для: Lelik
(11.04.2008 в 17:57)
| | *1 работает быстрее чем parseInt(), parseFloat(), Number()
может здесь это не принципиально, но знать полезно ) | |
|
|
|
|
|
|
|
для: AlexSol
(11.04.2008 в 17:21)
| | Если в массиве заданы числа, зачем же все усложнять? Чисто пионерский интерес.
У него даже название массива говорит за себя | |
|
|
|
|
|
|
|
для: Antohins
(11.04.2008 в 18:10)
| | посмотри как массив получается | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 13:47)
| | Math.min.apply(null,arrcoords_x); | |
|
|
|
|
|
|
|
для: coloboc66
(11.04.2008 в 13:47)
| |
var strcoords_x = '35,21,78,65,46,90';
var arrcoords_x = strcoords_x.split (',');
arrcoords_x.sort (new Function ('x', 'y', 'return parseInt (x) - parseInt (y)'));
alert ('min - ' + arrcoords_x [0] + '\nmax - ' + arrcoords_x [arrcoords_x.length - 1]);
|
| |
|
|
|