Итак, это может быть странная вещь, чтобы попытаться сделать, но мне любопытно, если это возможно:
Скажем, у меня есть ассоциативный массив, подобный этому:
myarray[50] = 'test1'
myarray[100] = 'test2'
Iможет получить доступ к 'test1'
по его ключу, конечно:
myarray[50]; // returns 'test1'
Но есть ли способ, где, если у меня есть индексный ключ '60', я могу посмотреть в массиве, и еслиключ 60 не там, получите значение следующего «ближайшего» ключа, «50»?
Вариант использования этого заключается в том, что я пытаюсь установитьдо ключевых точек для видео, и если пользователь ищет и пропускает ключевую точку, я хочу отобразить информацию из последней ключевой точки, которую пользователь искал за пределами.
Я думаю, что могу проверить наличиеключ с оператором «в».Но если он не найден, как я могу получить «предыдущий» или «следующий наименьший» ключ массива, который существует?
Я предполагаю, что единственный способ сделать это - перебрать массив, сохранив «последний».msgstr "значение индекса, пока не будет найдено условие выхода" index> myKey ".Дело в том, что если это длинное видео с большим количеством точек очереди и пользователь часто ищет, то итерация по всему массиву ключевых точек каждый раз может быть медленной.Есть ли лучший, более быстрый способ сделать это?