Рубрики
Без рубрики

Что такое массив, как объект в JavaScript

Прежде чем понять, что на массиве, как объект, давайте сначала посмотрим на то, что такое массив и что … помечены JavaScript, HTML, CSS, Rect.

Прежде чем понять, что такое массив, как объект, давайте сначала посмотрим на то, что такое массив, и что является объектом.

Массив : Array – это индексированная коллекция, которая может удерживать данные любого типа. Они созданы с []. Пример: пусть AR = [1, 2, «CAPSCODE», TRUE, NULL, 12]; Мы можем получить доступ к элементу AS ARR [2]//’CAPSCODE’

Объект : Объект – это коллекция ключей, которая удерживает свойства в ключ: Value Pair. Они созданы с {}. Пример:

let person = {
    first_name: "John",
    last_name: "Doe",
    company: "capscode"
}

Мы можем получить доступ к недвижимости как

person.company // 'capscode'

или

person['company'] // 'capscode'

Все идет нормально. Пусть теперь посмотрите, что такое массив, как объект ‘

Массив – это объект Он проинтестен доступа к элементам и неотрицательной длине свойства, чтобы узнать количество элементов в нем. Это единственное сходство, которое он имеет с массивом. Нет никаких методов массива, таких как, толчок, поп, присоединиться, карта и т. Д. Объекты, которые проинмерднули свойства и длина, называются массивом. Такие объекты также могут иметь другие свойства и методы, но не хватает встроенных методов массивов.

Массив, как объект выглядит как:

var arr_like_obj = {
    0 : "we",
    1 : "are",
    2 : "capscode",
    length : 3
}

Это объект, который выглядит как массив. Некоторые распространенные примеры массивоподобных объектов являются Аргументы объекта в функциях и Htmlcollection или Odelist объекты возвращено из таких методов, как Document.GetelementsByTagname или Document.QuerySelectorall

В массиве, как объект мы не может получить доступ к свойствам Как мы использовали в объекте.

arr_like_obj.0; //SyntaxError: Unexpected number

но

arr_like_obj[0]; //'we'

Вы можете разместить разницу между этими двумя типами объекта объекта Access здесь

arr_like_obj.length // 3

Array.isArray(arr_like_obj); // returns false

Как массив, так и массив, как объект в JavaScript:

arr_like instanceof Object; // returns, true
[ ] instanceof Object; // returns, true

Давайте посмотрим на несколько интересных примеров массива, объекта, массива, как объект

// simple array
const arr = ['a', 'b', 'c'];
console.log(Object.keys(arr)); // ['0', '1', '2']

// array-like object
const obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.keys(obj)); // ['0', '1', '2']

// array-like object with random key ordering
const anObj = { 100: 'a', 2: 'b', 7: 'c' };
console.log(Object.keys(anObj)); // ['2', '7', '100']

const object1 = {
  "a": 'somestring',
  "b": 42,
  "c": false
};

console.log(Object.keys(object1));
// expected output: ["a", "b", "c"]

Но почему мы им нужны? JavaScript Htmlcollection – это массивный объект

    1. ...
    2. ...
    3. ...
    4. ...
    5. ...
    6. ...
    7. ...
    8. ...
    9. ...
    10. ...

Документ. GtelelementsBytagname (‘li’) ; Вывод будет массивом, похожим на объект с длиной свойство в нем.

Как конвертировать массив, как на массив? Есть три способа сделать это. 1: используя распределительный оператор

[… Array_Like_obj]

2: Использование массива. Из () метод

Array.ROM (Array_Like_obj)

3: Использование для … цикла

Для (var i of array_like_obj)//Это просто используется для повторения для каждого элемента, не преобразующих напрямую в массив

4: Использование Object.values () метод

Object.values (Array_Like_obj)

Мы увидим все эти примеры один за другим, например: Позволяет иметь определенный образец объекта и функции, которую мы будем использовать в наших примерах.

//object with length property
var obj1 = {
    0 : "we",
    1 : "are",
    2 : "capscode",
    length : 3
}

//object without length property
var obj2 = {
    0 : "we",
    1 : "are",
    2 : "capscode",
}

//function in which we will arguments property
function func(params) {
  console.log(arguments)
  //here we will do all our operations
  console.log(a)
  console.log(a.push("capscode"))
  console.log(a)
}

1: Использование оператора распространения: [… Array_Like_obj]

Для распространения оператора для работы на работе Array_Like_obj/(любой объект) должен иметь iTerator I.E Он должен внедрить символ. Завестерство ()

console.log([...obj1]) //obj1 is not iterable

console.log([...obj2]) //obj1 is not iterable

function func(params) {
  console.log(arguments) //outputs below image
  var a = [...arguments] 
  console.log(a) //[1, 2, 3, 4, 5, 6, 6]
  a.push("capscode") 
  console.log(a) //[1, 2, 3, 4, 5, 6, 6, "capscode"]
}

func(1,2,3,4,5,6,6)

2: array.from (array_like_obj)

Для массива. from () на работу на работу, Array_Like_obj/(любой объект) должен иметь свойство длины, но он может или не может реализует символ.

var c=Array.from(obj1)
console.log(c) //["we", "are", "capscode"]
c.push("devs")
console.log(c) //["we", "are", "capscode","devs"]

var n = Array.from(obj2)
console.log(n) //[] as length property is not there


function func(params) {
  console.log(arguments) //always outputs same image above, kindly refer that.
  var a=Array.from(arguments) 
  console.log(a) //[1, 2, 3, 4, 5, 6, 6]
  a.push("capscode") 
  console.log(a) //[1, 2, 3, 4, 5, 6, 6, "capscode"]
}

func(1,2,3,4,5,6,6)

3: Использование для … цикла

для работы на работу, Array_Like_Object должен реализовывать символ. Метод Symbol.Iterator – автоматически называется автоматически, но мы также можем сделать это напрямую.

for (var i of obj1){
  console.log(i) //TypeError: obj1 is not iterable
}

for (var i of obj2){
  console.log(i) //TypeError: obj2 is not iterable
}

function func(params) {
  var realArray = [];
  for(const element of arguments) {
    realArray.push(element);
  }
  console.log(realArray) //[1, 2, 3, 4, 5, 6, 6]
}
func(1,2,3,4,5,6,6)

4: Использование Object.values () Метод Object.values.values. ():

для Object.Value, чтобы работать над, продолжительность свойства или объекта. Завестер () не должен

var a = Object.values(obj1)
console.log(a) //["we", "are", "capscode", 3]
a.push("devs")
console.log(a) //["we", "are", "capscode", 3, "devs"]

var b = Object.values(obj2)
console.log(b) //["we", "are", "capscode"]
b.push("devs")
console.log(b) //["we", "are", "capscode", "devs"]

function func(params) {
//console.log(arguments) //always outputs same as the above image
  var a= Object.values(arguments)
  console.log(a) //[1, 2, 3, 4, 5, 6, 6]
  console.log(a.push("capscode"))
  console.log(a) //[1, 2, 3, 4, 5, 6, 6, "capscode"]
}

func(1,2,3,4,5,6,6)

Мы надеемся, что теперь на массиве, как объект, ясно для вас. Если на самом деле, пожалуйста, оцените нас и дайте нам знать ваш обзор в комментарии.

Это мой дорогой Devs:)

Мы сделаем с тем, что такое массив, как объект, теперь вы можете реализовать его нигде без каких-либо путаций.

Если вам нравится, пожалуйста, дайте 👍

Спасибо, CAPSCODE www.capscode.in.

Оригинал: “https://dev.to/capscode/what-is-array-like-object-in-javascript-3f5m”