Help with Mutation Algorithm!

I am trying to check whether the second string in the the array has all the letters that are included in the first string of the given array.

function mutation(arr) {

arr = arr.map(function(val) {
   return val.toLowerCase();
 });
 
 for (var i = 0; i < arr[1].length; i++) { 
      if (arr[0].indexOf(arr[1].charAt(i), 0 <= 0) == -1) {
        return false;
      } else {
        return true;
      }
      
 }
  

}

mutation(["hello", "hey"]);

My code works for checking whether the second string has a different letter than in the first string but it doesn’t work if the given array had strings such as
mutation(["hello", "Hello"]);
mutation(["floor", "for"]);

First of all, thank you for the reply. So, that line of code evaluates to to false, and I just realized how can it do that if the variable i only goes through one iteration. In the first iteration i = 0, so, that line of code is checking whether arr[0] (the first string) has the first character in arr[1] (the second string). -1 means it is not there so it is checking if the character is there or not. But, the first character of the second string(“hey”) in the given argument is “h” which indeed is in the first string so it should be returning true not false. So I am not really sure why it does that. The if/else statement was used to check whether the second string has a character that is not found in the first string. Kind of stuck here.

arr[0].indexOf(arr[1].charAt(i), 0 <= 0)

Thank you so much for the tips and information. I will definitely keep this in mind. Do you have tips that you can provide concerning how to approach and solve an algorithm?

Alright, thank you again for the help!