Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #161 (permalink)  
Старый 19.04.2011, 01:40
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,585

Придумывать ничего не надо, достаточно понимать. Чтоб потом, когда внезапно понадобится, само на ум пришло.)
__________________
29375, 35
Ответить с цитированием
  #162 (permalink)  
Старый 20.04.2011, 02:16
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Может вопрос и тупой, но можно ли как-то получить набор видимых, объявленных в коде переменных и, возможно, функций? Например,
(function(){
var x = 5, y = 10;
console.log(__variables__); // Объект {x:3, y:10}
})()
Ответить с цитированием
  #163 (permalink)  
Старый 20.04.2011, 06:00
Профессор
Отправить личное сообщение для Matre Посмотреть профиль Найти все сообщения от Matre
 
Регистрация: 07.01.2011
Сообщений: 582

FINoM, нормальными средствами — никак. Потребуется либо разбирать код скриптом, чтобы достать объявления переменных, либо писать что-то вроде этого:

Function.prototype.scope = function () {
	var script = this.toString().replace(/function ?.*\([^)]*\)(?:\n|\s|\t)\{/, "").replace(/\}(?:\n|\t|\s)*$/, "").replace(/var +([а-яa-z0-9]+)/gi, "scope.$1");
	var scope = {};
	scope.scope = {};
	with (scope)
		eval(script);
	return scope.scope;
};


var x = function () {
	var p = 123;
};

alert(x.scope().p);


Давно писал. Можно заточить под свои нужды.
Ответить с цитированием
  #164 (permalink)  
Старый 22.04.2011, 00:04
Аватар для UpJump
Профессор
Отправить личное сообщение для UpJump Посмотреть профиль Найти все сообщения от UpJump
 
Регистрация: 02.11.2010
Сообщений: 174

Всем снова привет! Народ где я застрял? в чем ошибка?
Почему count не увеличивается?

var count =0;
whatRol(count);

function whatRol(c){
		var int = window.setTimeout(rol,2);
		function rol(){
			c++;
			alert(count)
		}
	}


Как я понимаю я не передаю аргумент в функцию. Но почему?
Ответить с цитированием
  #165 (permalink)  
Старый 22.04.2011, 00:15
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

Передаешь, ты наверно просто ожидаешь что он передался по ссылке, но примитивные значения передаются по значению.
__________________
readOnly
Ответить с цитированием
  #166 (permalink)  
Старый 22.04.2011, 00:18
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,585

Если по простому, то увеличивается внутренняя переменная c, которой при вызове присваивается значение переменной count, а не сама count.
__________________
29375, 35

Последний раз редактировалось Aetae, 22.04.2011 в 00:24.
Ответить с цитированием
  #167 (permalink)  
Старый 22.04.2011, 00:20
Аватар для UpJump
Профессор
Отправить личное сообщение для UpJump Посмотреть профиль Найти все сообщения от UpJump
 
Регистрация: 02.11.2010
Сообщений: 174

мдя. ясно. надо повтыкать эту тему. про это я не подумал. спасибо всем
Ответить с цитированием
  #168 (permalink)  
Старый 22.04.2011, 02:05
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Очень был удивлен возможностью создавать константы в хроме
const X = 5; 
X = 10;
alert(X);
Какие еще браузеры их поддерживают?
Ответить с цитированием
  #169 (permalink)  
Старый 22.04.2011, 04:53
Профессор
Отправить личное сообщение для Matre Посмотреть профиль Найти все сообщения от Matre
 
Регистрация: 07.01.2011
Сообщений: 582

http://javascript.ru/blog/Octane/Fun...nty-JavaScript
Ответить с цитированием
  #170 (permalink)  
Старый 22.04.2011, 22:16
Аватар для UpJump
Профессор
Отправить личное сообщение для UpJump Посмотреть профиль Найти все сообщения от UpJump
 
Регистрация: 02.11.2010
Сообщений: 174

всегда ли функции запускаются в том порядке в каком их вызываешь?
Ответить с цитированием
Ответ



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

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