1、JSON的遍历
 for(var i in json){
  alert(json[i];
 }
2、arguments 可以理解为是一个数组,并且建有json的部分能力
 css(obj,attr,value){
  obj.attr = value;
 }
3、字符串的单字符获取方法
 str.charAt(index); // 兼容全部浏览器
 str[index]; // 低版本浏览器不兼容
 
附记:
 1、获取元素在样式表中定义的属性值
     var getStyle = function(node, property){
   if (node.style[property]) {
    return node.style[property];
   }
   else if (node.currentStyle) {
    return node.currentStyle[property];
   }
    else if (document.defaultView && document.defaultView.getComputedStyle){
     var style = document.defaultView.getComputedStyle(node, null);
     return style.getPropertyValue(property);
    }
    return null;
  };
 2、常用JS工具
     var utils = {
   // 创建固定ID的标签
   createE:function(nodeName,id){var newEl = document.createElement(nodeName);if(id&&id!==""&&!document.getElementById(id)){newEl.id = id;}return newEl;},
   // 根据class Name获取元素集合
   getByC:function(className){return document.getElementsByClassName(className);},
   // 根据ID获取标签
   getById:function(id){return document.getElementById(id);},
   // 根据DOM对象和属性名获取属性值,解决获取样式时的兼容问题,
   // 兼容各种浏览器和行间样式与CSS样式
   getStyle:function(el,name){
    var stl = '';
    try{
     stl = el.style[name];
     if(stl==''){throw false;}
    }catch(e){
     try{
      stl = el.currentStyle[name];
     }catch(e1){
      try{
       stl = window.getComputedStyle(el,null)[name];
      }catch(e2){
      }
     }                   
    }finally{
     return stl;
    }
   },
   // 渐变效果,通常用于width\height\left\right\top\bottom等
    huadong:function(el,name,target,timer){var old=utils.getStyle(el,name);if(!el||!name||!target||!/^-?\d+/.test(target)||!/^-?\d+/.test(old)){return;}
                clearInterval(timer);var o=parseInt(old),t=parseInt(target),c=t-o,step=c>0?2:c<0?-2:0;timer=window.setInterval(function(){o+=step;utils.setStyle(el,name,o+'px');if((c>0&&o>=t)||(c<=0&&o<=t)){clearInterval(timer);}},10);},

};
 3、小工具:
  获取鼠标点击的“目标对象”:event.target, IE下为event.srcElement
   示例代码:
    <html>
     <head>
      <script type="text/javascript">
       function whichElement(e) // 获取鼠标点击对象的方法
       {
        var targ
        if (!e) var e = window.event // 如果e不存在
        if (e.target) targ = e.target // 事件目标节点(不兼容IE)
        else if (e.srcElement) targ = e.srcElement // IE下为event
        if (targ.nodeType == 3) // 当点击了文本节点Text
           targ = targ.parentNode // 文本节点的父节点
        var tname
        tname=targ.tagName // 元素类型
        alert("You clicked on a " + tname + " element.")
        /* 简写:
         e = e ? e : window.event;var targ = e.target ? e.target : e.srcElement ? e.srcElement : null;targ = targ.nodeType == 3 ? targ.parentNode:targ;
        */
       }
      </script>
     </head>
     <body onmousedown="whichElement(event)">
      <p>在文档中点击某个位置。消息框会提示出您所点击的标签的名称。</p>
      <h3>这是标题</h3>
      <p>这是段落。</p>
      <img src="/i/eg_mouse2.jpg" />
     </body>     
    </html>
 4、延伸扩展:如何判断当前浏览器是什么浏览器?
   简而言之,每个浏览器的独有属性的一个罗列:
   总所周知:当下比较常用的有Firefox(火狐浏览器)、Opera(欧鹏浏览器)、Safari(苹果公司的网络浏览器)、
    Chrome(谷歌浏览器);下面一一对各个浏览器相对独有的特性进行一个描述(暂时不谈论内核的差距,主要是从相关函数进行分析)。
   Firefox中的DOM元素都有一个getBoxObjectFor函数,用来获取该DOM元素的位置和大小
    IE对应的中是getBoundingClientRect函数)。这是Firefox独有的,判断它即可知道是当前浏览器是Firefox。
   Opera提供了专门的浏览器标志,就是window.opera属性。
   Safari浏览器中有一个其他浏览器没有的openDatabase函数,可做为判断Safari的标志。
   Chrome有一个MessageEvent函数,但Firefox也有。不过,好在Chrome并没有Firefox的getBoxObjectFor函数,
    根据这个条件还是可以准确判断出Chrome浏览器的。

javascript学习笔记_1的更多相关文章

  1. Java程序猿的JavaScript学习笔记(汇总文件夹)

    最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...

  2. Java程序猿的JavaScript学习笔记(8——jQuery选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  3. Java程序猿JavaScript学习笔记(2——复制和继承财产)

    计划和完成在这个例子中,音符的以下序列: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaSc ...

  4. Java程序猿的JavaScript学习笔记(3——this/call/apply)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  5. Java程序猿JavaScript学习笔记(4——关闭/getter/setter)

    计划和完成这个例子中,音符的顺序如下: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScr ...

  6. Java程序猿JavaScript学习笔记(14——扩大jQuery UI)

    计划和完成这个例子中,音符的顺序如下: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScr ...

  7. javascript学习笔记(四) Number 数字类型

    数字格式化方法toFixed().toExponential().toPrecision(),三个方法都四舍五入 toFixed() 方法指定小数位个数  toExponential() 方法 用科学 ...

  8. JavaScript学习笔记之数组(二)

    JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...

  9. JavaScript学习笔记[0]

    JavaScript学习笔记[0] 使用的是廖雪峰JavaScript教程. 数据类型 Number 表示数字,不区分浮点整形. === 比较时不转化数据类型. == 反之. NaN与任何值都不想等, ...

随机推荐

  1. Request类源码分析

    通过APIView进入找到Request的源码 可以看见一堆属性和方法,其中request.data其实是一个方法,被包装成一个属性 继续看__getattr__和query_params方法: 代码 ...

  2. 从svn到git开发转变

    前言:目前的公司的开发技术还是处于刀耕火种的年代,react,vue已经火到不行了,可是还在用jQuery一遍遍处理着dom.版本控制用的是svn,这里也不是说svn不好,在windows下svn的“ ...

  3. 初识redux走向redux-react

    废话不多说,先上一张图 首先记住redux设计思想 Web应用是一个转态机,视图与转态是一一对应的 所有的转态,保存在一个对象里 1.store 存储数据的容器,整个应用只有一个state,Redux ...

  4. java代理通俗简单解析

    1         代理 1.1            代理的概念和作用 代理的概念很好理解,就像黄牛代替票务公司给你提供票,经纪人代理艺人和别人谈合作.Java的代理是指实现类作为代理类的属性对象, ...

  5. (6)tcp-socket

    (1)client端口: import socket# 产生一个socket对象sk = socket.socket()# 建立连接sk.connect( ("127.0.0.1" ...

  6. 提升 Hive Query 执行效率 - Hive LLAP

    从 Hive 刚推出到现在,得益于社区对它的不断贡献,使得 Hive执行 query 效率显著提升.其中比较有代表性的功能如 Tez (将多个 job整合为一个DAG job)以及 CBO(Cost- ...

  7. Windos消息驱动

    当Window是向程序发送消息时,它调用程序中的一个函数,这个函数用来描述Windows发送的消息,成为窗口函数或消息处理函数.他是一个自定义的回调函数: LRESULT CALLBACK Windo ...

  8. JDK7动态代理源码分析

    IObject proxy = (IObject) Proxy.newProxyInstance(IObject.class.getClassLoader(), new Class[]{IObject ...

  9. 简单的jQuery hide()方法演示

    <!DOCTYPE html><html><head><meta charset="utf-8"> <title>jQu ...

  10. C语言操作符

    C语言操作符的分类: 算术操作符 逻辑运算符 位操作符     赋值操作符 单目操作符 关系操作符 条件操作符 逗号表达式 数组下标引用 函数调用 结构体成员使用 大体上,C语言的操作符具体就这么些, ...