'use strict'; var stringList = [ 'hello 1', 'hello 2', 'hello 3', 'hello 4', 'hello 5' ]; var Say = function(string) { var content = string; var hello = function (){ return content; }; return { hello: hello }; }; var container = document.querySelector("#container"); while (stringList.length > 0) { var str = stringList.shift(); var btn = document.createElement("BUTTON"); btn.appendChild(document.createTextNode(str)); var say = new Say(str); console.log(say.hello()); btn.onclick = (function(say) { alert(say.hello()); }).bind(this, say); container.appendChild(btn); }
<div id='container'></div>