经典题目总结

1. var i; alert(i);         //  undefined 只声明了但是没定义

2. var i; i--; alert(i);   //  NaN i--运算自动将 i 转化成了数字类型,但是 i 没有初值,所以说它不是一个合法的数字

3. 关于作用域——找变量的时候会先在最近的作用域里找!!

var x=1;

function print(){

  alert(x);        //  undefined  先在本层作用域找x,找到了,但是还没执行初始化,所以是未定义。若没有下面的代码,则弹出1。

  var x = 'hello world';

  alert(x);      //  hello world 找到了。

}

print();

 

4. 关于作用域——在哪里定义的函数,哪里就是他最近的作用域,不要看他是在哪里被调用的。

var name = 'a';

function first(){

  alert(name);

function second(){

  var name = 'b';

  first();      //这里只是调用first,first的声明依然属于window,所以window就是first最近的作用域。如果将first定义在second中,则弹出 b。

}

second();      //  弹出 a。

 

5. 关于执行顺序——计算机总是俩俩计算的,先把算出来的确定一下类型,然后再执行下面的计算。

function show(i){

   alert(2<i<3);     //  先执行2< i 的比较,为false,然后false相当于0,则比较0<3,为真,弹出true

}

show(1);        //  弹出true

 

6. 一个简单的Ajax练习 从http://a.com/test.php 请求到一段数据如下:{"name":'bbb'},并将其以<a href="###">bbb</a>的格式显示到<div id='test'></div>中


<script type="text/javascript" src="jQuery.js"></script>

function request(){

$.ajax({

  url:"http://a.com/test.php",

  data:"word="+word,

  type:"get",

  success:function(data){

    var temp = JSON.parse(data);    // 或者 temp = eval('('+data+')');

    var tempHTML = "<a href='###'>"+ temp.name +"</a>";

    var testdiv.append(tempHTML);

  }

});

}

 

7. a==b只判断值

    a===b还会判断类型等等所有方面

 

8. 字符串转数字

 parseInt(),parseFloat(),Number(),'5'-0;

posted @ 2012-06-25 18:14  丛子  阅读(281)  评论(0编辑  收藏  举报