1, Array.from ()
Этот метод интересен, может представлять собой итеративный или аналогичный массив сегментации объекта, то значение, возвращаемое как новый массив
Псевдо массив объектов (имеет length
свойство , а также ряд индексов атрибутов для любого объекта)
Итерируемый] ( https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/iterable ) (элементы могут приобретать объект, например, набор карт и т.п.)
Этот метод имеет три параметра, один является первым , чтобы быть преобразован в массив или массив фиктивных итерируемых, второй параметр является эквивалентом способа отображения, третий параметром является функция выполняется внутри карты , когда this
объект указывающего, несколько похожи bind
,, call
, apply
способ может отделить данные объекта и обработки данных ,
const DObj = {
handleArr: function (x) {
return x+'1'
}
}
Array.from('Hello World !',function (v) { return this.handleArr(v)}, DObj)
// 打印结果
["H1", "e1", "l1", "l1", "o1", " 1", "W1", "o1", "r1", "l1", "d1", " 1", "!1"]
Советы при использовании третьего параметра, функция карты Не используйте функции со стрелками, в противном случае эта точка не меняется, не включает в себя третий параметр, вы можете использовать функции со стрелками
карта
let m = new Map()
m.set('one', 'H')
m.set('tow', 'a')
m.set('three', 'a')
const DObj = {
handleArr: function (x) {
return x + '1'
}
}
newData = Array.from(m, function (v) { return this.handleArr(v)}, DObj)
console.log( newData)
// 打印结果
["one,H1", "tow,a1", "three,a1"]
Задавать
let m = new Set()
m.add('H')
m.add('a')
m.add('o')
const DObj = {
handleArr: function (x) {
return x + '1'
}
}
newData = Array.from(m, function (v) { return this.handleArr(v)}, DObj)
console.log( newData)
// 打印结果
["H1", "a1", "o1"]
Класс массив объектов
До тех пор , пока объект key
является числовым значением, а value
не цифровым, его можно рассматривать в качестве объекта на основе массива, key
является индекс
2, Array.isArray ()
Этот метод используется для обнаружения переменного , является ли массив данных , или, если он возвращается true
, в противном случае она возвращаетfalse
const arr = [1,2,3,4,5];
const obj = {name: '李狗蛋'};
const str = 'Hello World';
console.log(Array.isArray(arr))
console.log(Array.isArray(str))
console.log(Array.isArray(obj))
// 打印结果
true
false
false
Подсказки typeof
используются для определения типа данных или переменными, но только возвращать типы, не является точным, instanceof
например , обнаружением, но также и возвращает ли переменные данные или объект массивtrue
3, Array.of ()
Конструктор массива и поместить несколько похож, вы можете создать массив параметров, основанные на внутреннем, но разница:
1. of
Метод для каждого элемента параметра в массиве как внутри, если только номер ключевой параметр по - прежнему является массивом
2. Array
Каждый параметр конструктору в качестве массива ввода, если только один цифровой параметр , который создаст пустую длину массива