У мене є купа речей, які я хочу додати в масив, і я не знаю, яким розміром буде масив заздалегідь. Чи можу я зробити щось подібне до c # arraylist у javascript, і робити це myArray.Add(object);неодноразово?
Відповіді:
просто використовуйте array.push ();
var array = [];
array.push(value);
Це додасть до нього ще один предмет.
Щоб зняти одну, використовуйте array.pop();
Посилання на масиви JavaScript: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array
У javascript немає ArrayList.
Однак існує ArrayECMA 5.1, яка має подібні функції до "ArrayList". Більшість з цих відповідей дослівно взято із HTML-рендерінгу Ecma-262 Edition 5.1, Специфікація мови ECMAScript .
Визначені масиви мають наступні методи:
.toString ( ).toLocaleString ( ).concat ( [ item1 [ , item2 [ , … ] ] ] ) Коли метод concat викликається з нулем або більше аргументами item1, item2 тощо, він повертає масив, що містить елементи масиву об'єкта, а потім елементи масиву кожного аргументу по порядку.
.join (separator)
Елементи масиву перетворюються на Рядки, і ці Рядки потім об'єднуються, розділяючись входженнями роздільника. Якщо роздільник не передбачений, в якості роздільника використовується одна кома.
.pop ( ) Останній елемент масиву вилучається з масиву і повертається.
.push ( [ item1 [ , item2 [ , … ] ] ] ) Аргументи додаються до кінця масиву в тому порядку, в якому вони з'являються. Нова довжина масиву повертається як результат дзвінка. "
.reverse ( ) Елементи масиву переставляються таким чином, щоб змінити їх порядок. Об'єкт повертається в результаті виклику.
.shift ( ) Перший елемент масиву вилучається з масиву і повертається ".
.slice (start, end) Метод slice приймає два аргументи, start і end, і повертає масив, що містить елементи масиву, від елемента до початку, але не включаючи end end (або до кінця масиву, якщо end не визначений).
.sort (comparefn) Елементи цього масиву сортуються. Сортування не обов'язково стабільне (тобто елементи, що порівнюють рівні, не обов'язково залишаються у своєму початковому порядку). Якщо порівнянняfn не визначено, це повинна бути функція, яка приймає два аргументи x і y і повертає від'ємне значення, якщо x <y, нуль, якщо x = y, або додатне значення, якщо x> y.
.splice (start, deleteCount [ , item1 [ , item2 [ , … ] ] ] ) Коли метод сплайсингу викликається з двома або більше аргументами start, deleteCount та (необов’язково) item1, item2 тощо, елементи deleteCount масиву, що починається з початку індексу масиву, замінюються аргументами item1, item2 тощо. Об’єкт Array що містить видалені елементи (якщо такі є) повертається.
.unshift ( [ item1 [ , item2 [ , … ] ] ] ) Аргументи додаються до початку масиву таким чином, що їх порядок у масиві збігається з порядком, у якому вони відображаються у списку аргументів.
.indexOf ( searchElement [ , fromIndex ] ) indexOf порівнює searchElement з елементами масиву, у порядку зростання, використовуючи внутрішній алгоритм порівняння строгих рівності (11.9.6), і якщо його знайшли в одній або декількох позиціях, повертає індекс першої такої позиції; в іншому випадку повертається -1.
.lastIndexOf ( searchElement [ , fromIndex ] ) lastIndexOf порівнює searchElement з елементами масиву в порядку убування за допомогою внутрішнього алгоритму порівняння строгих рівності (11.9.6) і, якщо знайдено в одній або декількох позиціях, повертає індекс останньої такої позиції; в іншому випадку повертається -1.
.every ( callbackfn [ , thisArg ] ) callbackfn має бути функцією, яка приймає три аргументи і повертає примусове значення до булевого значення true або false. кожен виклик callbackfn один раз для кожного елемента, що присутній у масиві, у порядку зростання, поки не знайде той, де callbackfn повертає false. Якщо такий елемент знайдено, кожен негайно повертає false. В іншому випадку, якщо callbackfn повернув true для всіх елементів, кожен поверне true.
.some ( callbackfn [ , thisArg ] ) callbackfn має бути функцією, яка приймає три аргументи і повертає примусове значення до булевого значення true або false. деякі виклики callbackfn один раз для кожного елемента, що присутній у масиві, у порядку зростання, поки він не знайде того, де callbackfn повертає true. Якщо такий елемент знайдено, деякі негайно повертають true. В іншому випадку деякі повертає false.
.forEach ( callbackfn [ , thisArg ] ) callbackfn має бути функцією, яка приймає три аргументи. forEach викликає callbackfn один раз для кожного елемента, що присутній у масиві, у порядку зростання.
.map ( callbackfn [ , thisArg ] ) callbackfn має бути функцією, яка приймає три аргументи. map викликає callbackfn один раз для кожного елемента масиву, за зростанням, і створює новий масив з результатів.
.filter ( callbackfn [ , thisArg ] ) callbackfn має бути функцією, яка приймає три аргументи і повертає примусове значення до булевого значення true або false. фільтр викликає callbackfn один раз для кожного елементу масиву, за зростанням, і створює новий масив з усіх значень, для яких callbackfn повертає true.
.reduce ( callbackfn [ , initialValue ] ) callbackfn має бути функцією, яка приймає чотири аргументи. зменшити виклики зворотного виклику, як функції, один раз для кожного елемента, що присутній у масиві, у порядку зростання.
.reduceRight ( callbackfn [ , initialValue ] ) callbackfn має бути функцією, яка приймає чотири аргументи. reduceRight викликає зворотний виклик, як функцію, один раз для кожного елемента, що присутній у масиві, у порядку зменшення.
а також властивість length .
За допомогою JavaScript всі масиви гнучкі. Ви можете просто зробити щось на зразок наступного:
var myArray = [];
myArray.push(object);
myArray.push(anotherObject);
// ...
Масиви досить гнучкі в JS, ви можете зробити:
var myArray = new Array();
myArray.push("string 1");
myArray.push("string 2");
У сценарії Java ви оголошуєте масив, як показано нижче:
var array=[];
array.push();
а для arraylist або об’єкта чи масиву ви повинні використовувати json; та серіалізуйте його за допомогою json, використовуючи такий код:
var serializedMyObj = JSON.stringify(myObj);
Використовуйте push()метод масиву javascript , він додає даний об'єкт в кінці масиву. Масиви JS досить гнучкі, ви можете проштовхувати в масив скільки завгодно об'єктів, не заздалегідь вказуючи довжину. Крім того, різні типи об'єктів можуть бути передані в один і той же масив.
Спробуйте це, можливо, може допомогти, зробіть те, що хочете:
var listArray = new ListArray();
let element = {name: 'Edy', age: 27, country: "Brazil"};
let element2 = {name: 'Marcus', age: 27, country: "Brazil"};
listArray.push(element);
listArray.push(element2);
console.log(listArray.array)
<script src="https://marcusvi200.github.io/list-array/script/ListArray.js"></script>