JackShcherbakov
@JackShcherbakov

Как вывести имя ПАРАМЕТРА в js?

function CreateNewElement(tag, css){
	console.log(tag);
		this.css = css;
		this.tag = tag;
	try{
			for(let i = 0; i<arguments.length; i++){
						if(arguments[i]  == undefined){
						throw new Error("Отсутствует аргумент " + arguments[i]); //(1)
			}
		}

		
		console.log("A new html tag has been created: \n <"+tag+" style=\"" + css + "\">");
	}catch(e){
		alert(e.name + "\n" + e.message);
	}
};
var div = new  CreateNewElement(undefined, "color:white;");

Выводится значение переданного аргумента. Надо - имя ПАРАМЕТРА, то есть в данном случае tag Я пытаюсь добиться этого без создания массива с параметрами и потом тупо его вызвать через [i]. Нужно что-то уневерсальное
  • Вопрос задан
  • 323 просмотра
Решения вопроса 2
lazalu68
@lazalu68
Salmon
Если под именем параметра вы подразумеваете имя аргумента, то для JS это невозможно в generic way. Проще будет в функцию передавать объект в качестве аргумента.
Ответ написан
Комментировать
mashletov
@mashletov
Math.random()
1) Параметр это и есть аргумент, если что.
2) Никак.
3) Проверяйте параметры индивидуально:
if (tag === undefined) {
  throw new Error('Укажите tag'); 
}

или указывайте значения по умолчанию:
tag = tag || '<div>';

4) Ваш цикл все равно бы не работал, ибо arguments.length будет соотвествовать реальному количеству переданных параметров, а не сколько должно было быть. То есть, если вы просто запустите CreateNewElement() без параметров, то никакой ошибки не будет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы