Я пытаюсь нарисовать связи между узлами станции в Canvas. Если я придерживаюсь той же схемы для имен станций («A», «B» и т. Д.), Нет проблем: https://jsfiddle.net/3k4L2ky0/Странное поведение строк в холсте/JS
Но если я использую как однобуквенные строки с многобуквенными (например, «A ',' B ',' C ',' Airport ',' Central '), Javascript, кажется, обрабатывает первую букву более длинных строк как эквивалентную более коротким: например == 'Аэропорт' 'A': https://jsfiddle.net/w6n0p04w/
Очевидно, что проблема заключается в функции здесь:
function lookUp(sta) {
for (n=0; n < station.length; n++){
if (sta == station[n][0]) {
return n;
break;
}
}
}
Что я должен изменить? Разве «А» и «Аэропорт» не отличаются друг от друга?
Вы пытались использовать '' === вместо того, чтобы просто '' ==? –
Yup. Ничего не меняет. – Tyler330
Первый скрипт должен быть: https://jsfiddle.net/3k4L2ky0/1/ – Tyler330