Pomoc w złożeniu kodu w całość

0

Witam , jestem tutaj nowy a to mój pierwszy post także proszę o wyrozumiałość , mam problem z kodem a do rzeczy .
Dostałem zadanie aby napisać funkcje do zmiennej let str = 'testoooOowoO' która będzie zmieniała wszystkie litery na małe a następnie liczyła literę 'o' ,
lecz po wielu próbach połączenia tych dwóch funkcji (zmiany liter na małe + policzenia ile występuje liter ' o ' ) nie mogę tego skleić w całość aby działało .
Jest to mój jeden z pierwszych kodów . ---->https://codepen.io/patryk-madej/pen/VwpxKqW?editors=0011
Jakieś sugestie jak mogę to zrobić ?

0

@ProNoHacker: Chciałbym aby pojawiła się na końcu w konsoli, a na chwile obecną nie wyskakuje nic, wcześniej doszedłem do tego aby samo liczenie działało lecz nie wiem jak mogło by to wszystko razem współgrać .

0

Polecam czytać dokumentację funkcji, z których się korzysta ;)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/toLowerCase
toLowerCase() does not affect the value of the string str itself.
i ogólnie dotyczy to innych metod stringów, bo stringi są w JS niezmienne (immutable), więc ich metody i tak nie zmieniają tego, co jest.

czyli twoje str.toLowerCase()
tak naprawdę nic nie robi, bo tworzy się nowy string, ale nigdzie go nie zapisujesz. A mógłbyś np. stworzyć nową zmienną, do której byś przypisał str.LowerCase():

const lowerStr = str.toLowerCase()
 str.indexOf('o'+ pozycja + 1);

nie rozumiem, co chcesz osiągnąć, ale przypuszczam, że pomyliły ci się typy - liczba kontra string. A JS ma słabe typowanie, więc pozwala ci na mieszanie tego, ale wyjdzie potworek, bo łączysz string "o" z liczbą, więc zamieni się to na string, dodajesz liczbę, która doda się jak string... Przemyśl, co chcesz zrobić.

0
result = str.length- str.toLowerCase().replaceAll('o','').length

1 użytkowników online, w tym zalogowanych: 0, gości: 1