Optimalisering van omskakeling na 'n skikking in JavaScript

Dit is nie altyd nodig om 'n string in 'n skikking te verdeel om iets daarmee te doen nie. Kom ons kyk na 'n voorbeeld. Laat ons die volgende kode hê:

javascriptlet num = 123456789;
let arr = String(num).split('');
let sum = 0;

for (let elem of arr) {
  sum += +elem;
}

console.log(sum);

Hoekom is dit sleg om in 'n skikking te verdeel? Omdat, eersteens, dit rekenaarkrag verg om in 'n skikking te verdeel, tweedens, die resulterende skikking sal plek inneem in die werkgeheue (en dit sal meer plek inneem as die string self).

En tog kan jy met behulp van for-of nie net skikkings herhaal nie, maar ook strings:

javascriptlet num = 123456789;
let str = String(num);
let sum = 0;

for (let char of str) {
  sum += +char;
}

console.log(sum);
Задание 1

Die volgende kode soek die som van die syfers van 'n getal wat in 'n invoerveld ingevoer is. Voer optimalisering uit:

html<input>
javascriptlet input = document.querySelector('input');

input.addEventListener('blur', function() {
  let digits = input.value.split('');
  let sum = 0;
  
  for (let digit of digits) {
    sum += +digit;
  }
  
  console.log(sum);
});
Задание 2

Die volgende kode tel die hoeveelheid letters in 'n string. Voer optimalisering uit:

javascriptlet str = 'abcaab';
let arr = str.split('');

let i = 0;

for (let elem of arr) {
  if (elem == 'a') {
    i++;
  }
}

console.log(i);
Задание 3

Die volgende kode kontroleer vir die teenwoordigheid van 'n simbool in 'n string. Voer optimalisering uit:

javascriptlet str = 'abcaab';
let arr = str.split('');

console.log(arr.includes('a'));