<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type='text/javascript'>
function x() {}x.prototype.alerts = function() {
alert(this['0']);
};
x["0"] = 'name';
var xx = new x();
xx.alerts();
</script>
</head><body>
</body>
</html>
哪儿有错啊?

解决方案 »

  1.   

    x.prototype.alerts = function() {
        alert(this['0']);
    };this指向实例化后的对象x["0"] = 'name'是给x添加属性,而不是给原型添加属性。
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <script type='text/javascript'>
    function x() {}x.prototype.alerts = function() {
    alert(this['0']);
    };
    var xx = new x();
    xx["0"] = 'name';xx.alerts();
    </script>
    </head><body>
    </body>
    </html>