首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js简单出错总结

2012-10-30 
js容易出错总结a href# idxxtest1/aa href#test2/ascriptfunction init(){var message

js容易出错总结
<a href="#" id="xx">test1</a>
<a href="#">test2</a>
<script>
function init(){
  var message = 'click -';
  var x = document.getElementsByTagName('a');
  for(var i=0; i<x.length;i++){
    x[i].onclick = function(){
      alert(i);
      x[i].innerHTML = message;
    }
  }
}
init();
</script>
不对因为alert的值总是2,onclick的时候x[i].innerHTML中的i已经是2.解决方法是用this代替x[i]。


var iWantThisProperty = 'money';
var myHappiness = thingsToHave[iWantThisProperty ];
相当于
var myHappiness = thingsToHave.money;


<a href="#" id="xx">test1</a>
<a href="#">test2</a>
<script>
function init(){
  var message = 'innerHTML';
  var x = document.getElementsById('xx');
  var msg = '方括号和.的差别' ;
  x.message = msg;
}
init();
</script>
不对因为给x增加了属性message,应该为x[message]实现。


Value               Class      Type
-------------------------------------
"foo"               String     string
new String("foo")   String     object
1.2                 Number     number
new Number(1.2)     Number     object
true                Boolean    boolean
new Boolean(true)   Boolean    object
new Date()          Date       object
new Error()         Error      object
[1,2,3]             Array      object
new Array(1, 2, 3)  Array      object
new Function("")    Function   function
/abc/g              RegExp     object (function in Nitro/V8)
new RegExp("meow")  RegExp     object (function in Nitro/V8)
{}                  Object     object
new Object()        Object     object

热点排行