var Type = {}; for (var i = 0, type; type = [‘String‘, ‘Array‘, ‘Number‘][i++];) { (function (type) { Type[‘is‘ + type] = function (obj) { return Object.prototype.toString.call(obj)===‘[object ‘+type+‘]‘; } })(type); } console.log(Type.isArray([])); //true console.log(Type.isString(234)); //false
<div>1</div> <div>2</div> <div>3</div> <div>4</div> <script type="text/javascript"> var nodes = document.getElementsByTagName(‘div‘); for (var i = 0; i < nodes.length; i++) { nodes[i].onclick = function () { alert(i); } } </script>
<div>1</div> <div>2</div> <div>3</div> <div>4</div> <script type="text/javascript"> var nodes = document.getElementsByTagName(‘div‘); for (var i = 0; i < nodes.length; i++) { (function (i) { nodes[i].onclick = function () { alert(i); } })(i); } </script>
原文:http://www.cnblogs.com/meiyh/p/6428045.html