Просмотр полной версии : Добавление элемента в массив
Dorian_bs
05.07.2012, 18:00
Всем привет!
Помогите разобраться в написании скрипта!
Суть в том, что необходимо создать массив, в котором будет находиться подмассив с набором определенных элементов.
Вот пример:
var arr = [];
arr["dakota"] = ['test', 'test2', 'test3'];
console.log(arr.dakota);
Данный код запишет 3 элемента "'test', 'test2', 'test3'" по адресу "arr.dakota".
Все хорошо, но не могу разобраться, как добавлять новые элементы, скажем "test4" в "arr.dakota". Делал через push, но не получилось.
var arr = [];
arr["dakota"] = ['test', 'test2', 'test3'];
arr.dakota.push('test4');
console.log(arr.dakota);
Помогите пожалуйста!
Заранее спасибо!)
Странно. У меня этот код работает:
var arr = [];
arr["dakota"] = ['test', 'test2', 'test3'];
arr.dakota.push('test4');
alert(arr.dakota); //test,test2,test3,test4
Попробуйте запустить отсюда. Если не работает, то скажите, какой у вас браузер.
Да, пример рабочий, только, исходя из этой фразы
Суть в том, что необходимо создать массив, в котором будет находиться подмассив с набором определенных элементов.
не совсем понятно, что требуется сделать: подмассив как элемент-массив исходного массива, или подмассив как свойство-массив исходного массива (я бы подумал на первое).
<!DOCTYPE html>
<script type="text/javascript" src="jquery1-9.min.js"></script>
<html>
<body>
<p id="demo">Click the button to sort the array.
<div class="inline">13</div>
<div class="inline">1.56</div>
<div class="inline">12.45</div>
<div class="inline">4</div> </p>
<p id="demo"></p>
<button onclick="myFunction()">Try it</button>
<script>
var myArray = [];
myArray.push($('div').text().toString())
alert(myArray)
</script>
</html>
Уважаемые ГУРУ, подскажите пожайлуста, как воткнуть в массив после числа КОМУ-разделитель ,чтоб в алерте стало 13,1.56, 12.45, ??? А то оно сваливается все вкучу 131.5612.45, ... Циклом кому добавлять ?
danik.js
15.02.2013, 13:01
Циклом кому добавлять
Скорее всего - да.
Ух! Живой человек!!! Спасибо ,друг! ...Уже получилось. Сделал с for и join(',')
как воткнуть в массив после числа
Как вариант...
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
</script>
</head>
<body>
<div class="inline">13</div>
<div class="inline">1.56</div>
<div class="inline">12.45</div>
<div class="inline">4</div>
<script>
var myArray = [];
$('div').each(function (i){
myArray[i]=$(this).text();
});
alert(myArray);
</script>
</body>
</html>
Здравствуйте! Помогите пожайлуста вывести циклом ТОЛЬКО значения после двоеточияв другой массив или алерт из такого массива: arr=[AS:a2, BS:b2,CD:c2]. Не знаю как отлавливать индекс из такого массива
danik.js
16.02.2013, 20:39
Здравствуйте! Помогите пожайлуста вывести циклом ТОЛЬКО значения после двоеточияв другой массив или алерт из такого массива: arr=[AS:a2, BS:b2,CD:c2]. Не знаю как отлавливать индекс из такого массива
Это не массив, а объект, и синтаксис другой:
var object = {AS:'a2', BS:'b2', CD:'c2'};
var array = [];
for (var property in object) {
array.push(object[property]);
}
alert(array);
Спасибо,ДРУГ! Я уже сделал push-ем с join()''
ОГРОМЕНЕЙШЕЕ СПАСИБО, ДРУГ! Я уже тут у вас нашел for inи поэксперементировал http://javascript.ru/for..in. Сейчас буду пробывать ВАШ ответ. Спасибо ОГРОМЕННОЕ ЕЩЕ раз! То - что искал! А наоборот: вывести ОБЪЕКТ, можно?
Пытаюсь дабавить в ОБЪЕКТ 4элемента по циклу по принципу PUSH для массива, но не получается. Помогите, пожайлуста
var o = {};
for(e=0;e<=4;e++){
o["p"] = e}
var array = [];
for (var pr in o) {
alert(o[pr])
array.push(o[pr]);
}
var o = {};
for(i=0;i<=4;i++){
o["p"+i]=i;
}
var array = [];
for (var key in o) {
array.push('o.'+key+'=' +o[key]);
}
alert(array.join(',\n'))
Спасибо ОГРОМНЕЙШЕЕ, ДРУЖИЩЕ ПРОФЕССОР !!!
danik.js
17.02.2013, 10:31
asmprog, а зачем эти переливания из пустого в порожнее? Почему бы в одном цикле не заполнить сразу и массив и объект? Или это ради учебных целей?
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot