《JavaScript 学习指南》阅读笔记(二)

  1. 创建匿名函数的语法为
    var func = new Function("param1","param2",...,"paramn,"function body");
    创建函数字面量的语法为
    var func = function(params){ // function body}
    下面用这两种方式实现乘法功能。
    var funcOne = new Function("x", "y", "return x*y;");
    var funcTwo = function (x, y) {
    return x * y;
    }

     var resultOne = funcOne(2, 3);
     var resultTwo = funcTwo(2, 3);
    
     console.log(resultOne + "\n" + resultTwo);
    

匿名函数和函数自变量都可以当做参数传递给另一个函数。二者的区别是每次调用匿名函数,都会解析一次,而函数自变量自始至终只解析一次。

  1. 我们也可以在 JS 中使用递归函数。

     var func = function add(x) {
         if (x <= 0) {
             return 0;
         } else {
             return x + add(x - 1);
         }
     }
    
     var result = func(4);
     console.log(result);
    
  2. Firefox 中我们可以利用 Firebug 进行调试。

  3. 基于 Netscape 的浏览器和 IE 浏览器处理 Event 事件的方式是不同的,比如鼠标按下事件
    function mouseDown(nsEvent) {
    var theEvent = nsEvent ? nsEvent : window.event;
    var localString = "x = " + theEvent.screenX + ", y = " + theEvent.screenY;
    console.log(localString);
    }

     document.onmousedown = mouseDown;
    

基于 Netscape 的浏览器会将 Event 作为对象的一部分传入,而在 IE 中,将 Event 事件视为 window 的属性。

  1.  

你可能感兴趣的:(《JavaScript 学习指南》阅读笔记(二))