Baseline Widely available
ÐеÑод at()
пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ Ð·Ð½Ð°Ñение в виде Ñелого ÑиÑла и возвÑаÑÐ°ÐµÑ ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð¼Ð°ÑÑива Ñ Ð´Ð°Ð½Ð½Ñм индекÑом. РкаÑеÑÑве аÑгÑменÑа меÑод пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ Ð¿Ð¾Ð»Ð¾Ð¶Ð¸ÑелÑнÑе и оÑÑиÑаÑелÑнÑе ÑиÑла. ÐÑи оÑÑиÑаÑелÑном знаÑении оÑÑÑÑÑ Ð¿ÑоиÑÑ
Ð¾Ð´Ð¸Ñ Ñ ÐºÐ¾Ð½Ñа маÑÑива.
const array1 = [5, 12, 8, 130, 44];
let index = 2;
console.log(`An index of ${index} returns ${array1.at(index)}`);
// Expected output: "An index of 2 returns 8"
index = -2;
console.log(`An index of ${index} returns ${array1.at(index)}`);
// Expected output: "An index of -2 returns 130"
СинÑакÑÐ¸Ñ ÐаÑамеÑÑÑ
index
ÐÐ½Ð´ÐµÐºÑ (позиÑиÑ) ÑлеменÑа возвÑаÑаемого ÑлеменÑа маÑÑива. ÐÑи пеÑедаÑе оÑÑиÑаÑелÑного индекÑа пÑименÑеÑÑÑ Ð¾ÑноÑиÑелÑÐ½Ð°Ñ Ð¸Ð½Ð´ÐµÐºÑаÑÐ¸Ñ Ñ ÐºÐ¾Ð½Ñа маÑÑива; напÑимеÑ, пÑи иÑполÑзовании оÑÑиÑаÑелÑного ÑиÑла, возвÑаÑаемÑй ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð¿ÑÑÑм обÑаÑного оÑÑÑÑÑа Ñ ÐºÐ¾Ð½Ñа маÑÑива.
ÐÐ»ÐµÐ¼ÐµÐ½Ñ Ð¼Ð°ÑÑива, ÑооÑвеÑÑÑвÑÑÑий пеÑÐµÐ´Ð°Ð½Ð½Ð¾Ð¼Ñ Ð¸Ð½Ð´ÐµÐºÑÑ. ÐÑли пеÑеданнÑй Ð¸Ð½Ð´ÐµÐºÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½Ð°Ð¹Ð´ÐµÐ½, возвÑаÑÐ°ÐµÑ undefined
.
ÐеÑод at()
ÑвлÑеÑÑÑ ÑквивиаленÑом полÑÑÐµÐ½Ð¸Ñ ÑлеменÑов маÑÑива Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ ÐºÐ²Ð°Ð´ÑаÑнÑÑ
Ñкобок Ñ Ð¸ÑполÑзованием неоÑÑиÑаÑелÑного индекÑа. ÐапÑимеÑ, array[0]
и array.at(0)
оба веÑнÑÑ Ð¿ÐµÑвÑй ÑлеменÑ. Ðднако, пÑи вÑÑиÑлении знаÑÐµÐ½Ð¸Ñ Ñ ÐºÐ¾Ð½Ñа маÑÑива, нелÑÐ·Ñ Ð¸ÑполÑзоваÑÑ array[-1]
как в Python или R, поÑÐ¾Ð¼Ñ ÑÑо вÑе знаÑÐµÐ½Ð¸Ñ Ð²Ð½ÑÑÑи квадÑаÑнÑÑ
Ñкобок ÑÑакÑÑÑÑÑÑ Ð±ÑквалÑно как ÑÑÑоковÑе ÑвойÑÑва. Ðз-за ÑÑого попÑÑка обÑаÑÐµÐ½Ð¸Ñ Ðº -1 ÑлеменÑÑ Ð±ÑÐ´ÐµÑ Ð¿ÑоÑиÑана как array["-1"]
, ÑÑо ÑвлÑеÑÑÑ Ð½Ð¾ÑмалÑнÑм ÑÑÑоковÑм знаÑением, а не индекÑом маÑÑива.
ÐбÑÑной пÑакÑикой ÑвлÑеÑÑÑ Ð¿Ð¾Ð»ÑÑении ÑиÑла ÑлеменÑов маÑÑива length
и поÑледÑÑÑее вÑÑиÑление знаÑÐµÐ½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа â напÑимеÑ, array[array.length - 1]
. ÐеÑод at()
ÑазÑеÑÐ°ÐµÑ Ð¾ÑноÑиÑелÑнÑÑ Ð¸Ð½Ð´ÐµÐºÑаÑиÑ, поÑÑÐ¾Ð¼Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑокÑаÑено до array.at(-1)
.
ÐеÑод at()
â ÑÑо generic. Ðн Ð¾Ð¶Ð¸Ð´Ð°ÐµÑ ÑолÑко, ÑÑо знаÑение this
бÑÐ´ÐµÑ Ð¸Ð¼ÐµÑÑ ÑвойÑÑво length
и ÑвойÑÑва Ñ ÑиÑловÑми клÑÑом.
Ð ÑледÑÑÑем пÑимеÑе пÑедÑÑавлена ÑÑнкÑиÑ, коÑоÑÐ°Ñ Ð²Ð¾Ð·Ð²ÑаÑÐ°ÐµÑ Ð¿Ð¾Ñледний ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð¿ÐµÑеданного маÑÑива
// ÐаÑÑив Ñо знаÑениÑми
const cart = ["apple", "banana", "pear"];
// ФÑнкÑиÑ, коÑоÑÐ°Ñ Ð²Ð¾Ð·Ð²ÑаÑÐ°ÐµÑ Ð¿Ð¾Ñледний ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð¿ÐµÑеданного маÑÑива
function returnLast(arr) {
return arr.at(-1);
}
// ÐолÑÑиÑÑ Ð¿Ð¾Ñледний ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð½Ð°Ñего маÑÑива 'cart'
const item1 = returnLast(cart);
console.log(item1); // ÐÑведеÑ: 'pear'
// ÐобавиÑÑ ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð² Ð½Ð°Ñ Ð¼Ð°ÑÑив 'cart'
cart.push("orange");
const item2 = returnLast(cart);
console.log(item2); // ÐÑведеÑ: 'orange'
СÑавнение меÑодов
Ð ÑÑом пÑимеÑе ÑÑавниваÑÑÑÑ ÑазнÑе ÑпоÑÐ¾Ð±Ñ Ð²ÑбоÑа пÑедпоÑледнего ÑлеменÑа маÑÑива
. ХоÑÑ Ð²Ñе пÑиведÑннÑе ниже ÑпоÑÐ¾Ð±Ñ ÑвлÑÑÑÑÑ Ð´Ð¾Ð¿ÑÑÑимÑми, наиболее кÑаÑким и наглÑднÑм ÑвлÑеÑÑÑ Ð¸ÑполÑзование меÑода at()
.
// ÐÐ°Ñ Ð¼Ð°ÑÑив Ñ ÑлеменÑами
const colors = ["red", "green", "blue"];
// ÐÑполÑзование ÑвойÑÑва 'length'
const lengthWay = colors[colors.length - 2];
console.log(lengthWay); // ÐÑведеÑ: 'green'
// ÐÑполÑзование меÑода slice(). ÐбÑаÑиÑе внимание, ÑÑо возвÑаÑаеÑÑÑ Ð¼Ð°ÑÑив
const sliceWay = colors.slice(-2, -1);
console.log(sliceWay[0]); // ÐÑведеÑ: 'green'
// ÐÑполÑзование меÑода at()
const atWay = colors.at(-2);
console.log(atWay); // ÐÑведеÑ: 'green'
ÐÑзов at() в маÑÑивоподобнÑÑ
обÑекÑаÑ
ÐеÑод at()
ÑÑиÑÑÐ²Ð°ÐµÑ ÑвойÑÑво length
Ð´Ð»Ñ Ð·Ð½Ð°ÑÐµÐ½Ð¸Ñ this
и вÑÑиÑлÑÐµÑ Ð¸Ð½Ð´ÐµÐºÑ Ð´Ð»Ñ Ð¾Ð±ÑаÑениÑ.
const arrayLike = {
length: 2,
0: "a",
1: "b",
};
console.log(Array.prototype.at.call(arrayLike, -1)); // "b"
СпеÑиÑикаÑии СовмеÑÑимоÑÑÑ Ñ Ð±ÑаÑзеÑами СмоÑÑиÑе Ñакже
Array.prototype.at
в библиоÑеке core-js
Array.prototype.find()
â возвÑаÑÐ°ÐµÑ Ð·Ð½Ð°Ñение на оÑновании пÑовеÑки.Array.prototype.includes()
â пÑовеÑÑÐµÑ Ð½Ð°Ð»Ð¸Ñие знаÑÐµÐ½Ð¸Ñ Ð² маÑÑиве.Array.prototype.indexOf()
â возвÑаÑÐ°ÐµÑ Ð¸Ð½Ð´ÐµÐºÑ Ð¿ÐµÑеданного ÑлеменÑа.RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4