JavaScript 定义Object对象不一致??

来源:互联网 发布:上海交大宿舍网络 编辑:程序博客网 时间:2024/06/05 00:43
<body><h1 id="hello">Hello: </h1><script>hello.innerHTML += "<br> second script, from " + dojo.version;var stPara = new Object();stPara.top = 100;stPara.left = 200;stPara.note = dojo.byId("hello");var a = {top: 100,left: 200,node: dojo.byId("hello")};document.write(a==stPara); //??莫名其妙,a和stPara有啥区别?for(var ele in stPara){document.write("<br>" + ele + stPara[ele]);}//dojo.fx.slideTo(stPara).play();dojo.fx.slideTo(a).play();  //这里,如果是a就没有问题,如果是传入stPara,似乎就会报个错,莫名其妙???</script></body>



以上那段代码很奇怪。可能不是很清楚js里面对象定义的方式吧

两种定义方式,new Object()方式(如同stPara)以及直接量方式(如同a),定义出来的东西应该是一样的(吧?),为啥传给dojo.fx.slideTo()函数,前者包装的参数会报错呢?真是奇了怪了。。。js没学到家