Показать сообщение отдельно
  #1 (permalink)  
Старый 20.08.2015, 00:42
Профессор
Отправить личное сообщение для Blondinka Посмотреть профиль Найти все сообщения от Blondinka
 
Регистрация: 21.03.2014
Сообщений: 173

Инкремент индекса элемента массива или как создавать уникальные имена для переменных?
Здравствуйте, хочу добавлять неограниченное количество контактов в массив. Вроде [["John", "john@gh.bn", "67696786"], ["Mary", "mary@jk.lp", "767896786"], ["Moe", "moe@hjh.hj", "7876867767"]] методом
contacts[i] = [name, email, telephone]; 
i++;

Как это можно решить? Есть вариант с использованием конструктора, но там та же проблема.
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
</head>

<body>
    <p id="demo"></p>
    <input type="text" name="name" />
    <input type="text" name="email" />
    <input type="text" name="telephone" />
    <input type="submit" value="submit" />
    <input type="submit" value="clear all" onclick="localStorage.clear();" />

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script>
        var contacts = [],
            i = 0;
        $("input[type='submit']").click(function() { 
            var name = $('input[name="name"]').val(), //set user input to variables.
                email = $('input[name="email"]').val(),
                telephone = $('input[name="telephone"]').val();


                contacts[0] = [name, email, telephone];//Если эту строку заменить на contacts[i] = [name, email, telephone]; - результат будет null


            contacts[1] = ["Orlando", "orlando@jhk.com"];

            localStorage["contacts"] = JSON.stringify(contacts);
            alert(localStorage["contacts"]);
            var contactList = JSON.parse(localStorage["contacts"]);
            alert(contactList);
			
			for(var i = 0; i < localStorage.length; i++){
				$("body").append("<p>"+localStorage.key(i)+"="+localStorage.getItem(localStorage.key(i))+"</p>");				
            }
        });
    </script>

</body>

</html>
Ответить с цитированием