Problem:
I am learning p5.js and I am following a tutorial from Coding Train YouTube channel. Everything was fine until I had to call a library function on an Image object. The problem is that I have instantiated the library in an object p and I'm using it's variables through p object. I don't know why it isn't recognizing the loadPixels() function. In the tutorial, the function works fine.
Error Message:
p5.js says: There's an error as "loadPixels" could not be called as a function
(on line 17 in help.html [file:///G:/Android/help.html:17:11]).
Verify whether "img" has "loadPixels" in it and check the spelling, letter-casing (Javacript is case-sensitive) and its type.
For more: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Errors/Not_a_function#What_went_wrong
Code:
<!DOCTYPE html>
<head>
  <script src='p5/p5.js'></script>
</head>
<body>
  <div id='container'></div>
  <script>
  let sketch = function(p) {
    p.setup = function(){
      p.createCanvas(56, 56);
      img = new Image();
      img.src = "scott.jpg";
    }
    p.draw = function() {
        // p.drawingContext.drawImage(img, 0, 0);
      p.loadPixels();
      img.loadPixels();
      for (var x=0; x<p.width; x++) {
        for (var y=0; y<p.height; y++) {
          // var d = p.dist(x, y, p.width/2, p.height/2);
          var loc = x+y+p.width;
          // p.pixels[loc] = p.color(d);
          p.pixels[loc] = img.pixels[loc];
        }
      }
    }
  p.updatePixels();
  };
  new p5(sketch, 'container');
  </script>
</body>
</html>
Edit: As someone pointed out that the problem is that I'm using Image() which is the default Image class for javascript. I did some changes to my code but now it gives me this error.
Error :-
Uncaught DOMException: The operation is insecure. help.html:18
    openWindow file:///G:/Android/help.html:18
    onclick file:///G:/Android/help.html:1
Code :-
<!DOCTYPE html>
<head>
  <script src='p5/p5.js'></script>
</head>
<body>
  <button onclick="openWindow()">click me to open a new window.</button>
  <div id='container'></div>
  <script>
    function openWindow() {
        var newWindow = window.open("", "Import Image", "height=56,width=56,status=yes,toolbar=no,menubar=no,location=no");  
        newWindow.document.write("<canvas id='imagePlaceholder'>Canvas not supported!</canvas>");
        var canvas = newWindow.document.getElementById("imagePlaceholder");
        var ctx = canvas.getContext("2d");
        ctx.drawImage(img, 0, 0);
        // console.log(ctx.getImageData(0, 0, 56, 56).data);
        dest = ctx.getImageData(0, 0, 56, 56).data;
    }
  let sketch = function(p) {
    p.setup = function(){
      p.createCanvas(56, 56);
      img = new Image();
      img.src = "scott.jpg";
      let dest = p.createImage(56, 56);
      console.log(img);
    }
    p.draw = function() {
        // p.drawingContext.drawImage(img, 0, 0);
      // p.loadPixels();
      img.loadPixels();
      for (var x=0; x<p.width; x++) {
        for (var y=0; y<p.height; y++) {
          // var d = p.dist(x, y, p.width/2, p.height/2);
          var loc = x+y+p.width;
          // p.pixels[loc] = p.color(d);
          p.pixels[loc] = img.pixels[loc];
        }
      }
    }
  p.updatePixels();
  };
  new p5(sketch, 'container');
  </script>
</body>
</html>
 
    