Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #41 (permalink)  
Старый 20.08.2012, 16:47
Профессор
Отправить личное сообщение для oneguy Посмотреть профиль Найти все сообщения от oneguy
 
Регистрация: 31.05.2012
Сообщений: 396

Сообщение от Deff Посмотреть сообщение
oneguy,
я сообразил (потому и затёр
Хорошо. Я своё затирать не буду, может ещё кто-то не сразу догадается.
Ответить с цитированием
  #42 (permalink)  
Старый 20.08.2012, 16:55
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от oneguy
Ещё такое решение:
Соль сей штуки - достаточно практичная - к примеру для ротации объекта в слайдере (пусть буква будет хеш некого обекта, ессено буквы/цыфры - не дублируются
Ответить с цитированием
  #43 (permalink)  
Старый 20.08.2012, 17:02
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

oneguy, ты еще, наверно, в школе на пятерки по математике учился, да?

Сообщение от Deff
Соль сей штуки - достаточно практичная - к примеру для ротации объекта в слайдере (пусть буква будет хеш некого обекта, ессено буквы/цыфры - не дублируются
шо ты нам все буквами, цифрами, пример давай
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #44 (permalink)  
Старый 20.08.2012, 17:13
Профессор
Отправить личное сообщение для oneguy Посмотреть профиль Найти все сообщения от oneguy
 
Регистрация: 31.05.2012
Сообщений: 396

Сообщение от wawandas
Ребята! подскажите пожалуйста как извлечь уникальные значения из массива:

var array = [1,2,3,4,1,2,6,7];

заранее спасибо!
Моё решение в предположении, что в массиве хранятся числа и порядок чисел в выходном массиве не важен:
function unique(arr) {
  if (!arr.length)
    return [];
  var arr2=arr.concat().sort(function (x, y) {
    return x-y;
  });
  var result=[arr2[0]], i=0, len=arr2.length-1;
  while (i<len)
    if (arr2[i]!=arr2[++i])
      result.push(arr2[i]);
  return result;
}
//тесты
alert(unique([1,2,3,4,1,2,6,7]));
Ответить с цитированием
  #45 (permalink)  
Старый 30.08.2012, 10:01
Аватар для wawandas
Аспирант
Отправить личное сообщение для wawandas Посмотреть профиль Найти все сообщения от wawandas
 
Регистрация: 05.08.2012
Сообщений: 58

/*
Используя только арифметическую операцию +, напишите функцию, которая принимает аргумент - число, и возвращает такое же число с противоположным знаком.
Пример: Из числа 13 на выходе получить -13.
*/


function negative(n)
	{
		return n+(-n)+(-n);
	}
alert(negative(13));


n = '-' + n;
return  parseInt(n);//не канает!


какие есть еще решения? думаем, делимся, спасибо за внимание!
Ответить с цитированием
  #46 (permalink)  
Старый 30.08.2012, 10:10
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

Сообщение от wawandas Посмотреть сообщение
/*
Используя только арифметическую операцию +, напишите функцию, которая принимает аргумент - число, и возвращает такое же число с противоположным знаком.
Пример: Из числа 13 на выходе получить -13.
*/


function negative(n)
	{
		return n+(-n)+(-n);
	}
alert(negative(13));


n = '-' + n;
return  parseInt(n);//не канает!


какие есть еще решения? думаем, делимся, спасибо за внимание!
а чем вас ваш последний вариант не устроил?
var n = 13;
n = '-' + n;
alert(parseInt(n));//не канает!
Ответить с цитированием
  #47 (permalink)  
Старый 30.08.2012, 10:18
Аватар для wawandas
Аспирант
Отправить личное сообщение для wawandas Посмотреть профиль Найти все сообщения от wawandas
 
Регистрация: 05.08.2012
Сообщений: 58

Сообщение от lord2kim
Используя только арифметическую операцию +

меня устраивает, но оно не отвечает условию (((


+ здесь выступает как контактенация а не как арифметическая операция

Последний раз редактировалось wawandas, 30.08.2012 в 10:26.
Ответить с цитированием
  #48 (permalink)  
Старый 30.08.2012, 10:25
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,510

var n = 13;
n = +('-' + n);
alert(n)
alert(typeof n)

Но условие убогое, ибо трактовать можно как угодно.
Например "арифметическую" - тогда этот вариант не катит так как " '-' + n " - не арифметический +, а конкатенация и " +('-' + n) " - также не арифметический +, а приведение к числу.
Или взять "только", тогда вообще никакой вариант не проходит: в первом варианте использован минус и в обоих, божеж ты мой, использованы скобочки.
__________________
29375, 35

Последний раз редактировалось Aetae, 30.08.2012 в 10:42.
Ответить с цитированием
  #49 (permalink)  
Старый 30.08.2012, 10:25
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

wawandas, сори не до конца дочитал...ну тогда только
var n = 13;
n = n + (-n) + (-n); //n = n + (-2 * n);
alert(parseInt(n));

хотя тут также условие не выполняется, ибо используется операция отрицания
Ответить с цитированием
  #50 (permalink)  
Старый 30.08.2012, 10:30
Аватар для wawandas
Аспирант
Отправить личное сообщение для wawandas Посмотреть профиль Найти все сообщения от wawandas
 
Регистрация: 05.08.2012
Сообщений: 58

Сообщение от lord2kim
ибо используется операция отрицания
в данном случае - это знак числа, или не?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книга: JavaScript. Сильные стороны Magneto Учебные материалы 16 21.04.2013 15:28
Первый Moscow JavaScript Meetup korenyushkin Общие вопросы Javascript 0 26.07.2011 15:23
Интересная задача для javascript bobri4 Общие вопросы Javascript 4 16.07.2011 13:08
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34