WHY "As a last resort the array index may be used"?

In the challenge https://learn.freecodecamp.org/front-end-libraries/react/give-sibling-elements-a-unique-key-attribute/

At the end it says

Normally, you want to make the key something that uniquely identifies the element being rendered. As a last resort the array index may be used, but typically you should try to use a unique identification.

Why is that? Is it because if of not repeating keys if you have several different map functions there´s going to be probably keys repeating between stuff?
But how putting key={item+1} solves things? Item is an entirey object so how come the key is going to be the entire object +1?

The key is how React identifies a specific element, ie where it should be in the DOM. So if you don’t use a unique value, there is a high risk that React will get confused and your stuff won’t work. The issue normally happens when you have a list of stuff that you can add more stuff to which also has something like sorting/filtering. So for example, if you had a list of stuff keyed by index, this is going to render as a set of elements with ids 0, 1, 2. If you change the order by sorting, the ids are still 0, 1, 2, only those are for different elements.

There are many cases where it’s fine, but use the index it’s at your own risk

React will give you warning if you won’t use keys at all. To React array indexes are ok.
It’s linter who doesn’t like array indexes as keys.

Ah cheers, forgot to finish the sentence. Not linter, what I’d meant to write was something like React defaults to using the index and the warning that appears if you miss off the key prop relates to that. edited anyway