JSFiddle - React, Tailwind, and code Playground

HTML

<div id="test"></div>

JavaScript

var parent = document.getElementById("test");
var people = [{name: 'john', age: 20}, 
        {name: 'james', age: 25}, 
        {name: 'ryan', age: 19}];
    var mainDiv = document.createElement('div', {id: 'mainDiv'});
    for (var i = 0; i < people.length; i++) {
        var button = document.createElement('button', {}, mainDiv);
        var person = people[i];
        attachEvent(button, "click",bindClickEvent(person));
        parent.appendChild(button);
    }
    
    function bindClickEvent(person){
        return function(){
            console.log('printing name');
            console.log(person.name);
        };
    }

function attachEvent(elem, event, func){
    if(elem.attachEvent){
      elem.attachEvent("on" + event, func);
    }else{
        elem.addEventListener(event, func);
    }
}