zoukankan      html  css  js  c++  java
  • JavaScript 基础知识

    1==>变量类型有 number,string,boolean,undefined,function,object

    2==>使用typeof获取变量的类型

    3==>使用一个变量时,提示undefined,有两种情况 

      a==>真的没定义(即没有使用var声明)

      b==>使用var声明了,但是没有赋值

    4==>可以给一个变量名赋值各种类型的数据,建议不要这么做

    5==>字符串转数字
      a==>使用parseInt(字符串,[进制]),默认为10进制
      b==>推荐使用parseFloat(string)

    6==>判断是否为字符串全为数字组成-->isNaN(string)  
    7==>比较中的==,会先转换为同一类型,再比较;===不转换类型,直接比较;
    8==>+号有两个功能
      a==>字符串连接
      b==>数学运算
      注意与其他运算符的区别(运算符一端是字符串类型的数字的情况)
    9==>闭包:子函数可以使用父函数中定义的局部变量
    10==>匈牙利变量命名:类型前缀;首字母大写
    11==>真假判断
      a==>真:true、非0数字(正负都是为true)、非空字符串、非空对象
      b==>假:false、数字0、空字符串、空对象
    14==>遍历json数据,使用for(var i in json){ alert(i+" "+json[i]); }
    15==>函数返回多个值得方法
      a==>保存在数组中,返回数组
      b==>保存在json中,返回json对象
    16==>在函数中使用arguments来获取调用函数时传递的参数,arguments是一个数组,有length属性
    17==>数组的length属性可以更改--->快速清零(赋值为0)

    18==>判断是一个字符串内是否包含子串  str.search("substr"),找到则返回出现的下标,未找到则返回-1

    19==>访问一个未定义的变量会报错,报错之后会停止运行后面的代码。

    20==>访问一个未定义的属性不会报错,会继续执行后面的代码。 

     

    1==>使用setTimeout(“action",time),功能:经过time秒之后执行action操作,只执行一次;
    2==>使用setInterval(“action”,time),功能:每经过time秒就执行一次,执行多次
    3==>使用setTimeout和setInterval都会返回一个值,将这个值作为clearTimeout(value)或者clearInterval(value)来取消定时器
    4==>获取子节点
      a==>element.childNodes获得的节点包含文本节点和元素节点。
      b==>element.children获得的是element的元素子节点。

    5==>使用obj.style.Name获取行间样式,值为字符串形式

    6==>使用obj.currentStyle.Name来获取非行间样式(外部样式或者<style></style>中的样式),仅IE支持
    7==>使用 getComputedStyle(obj,false)[attr] 来获取非行间样式(外部样式或者<style></style>中的样式),仅IE支持
    8==>获取第一个元素节点
      a==>element.firstElementChild(高级浏览器支持)
      b==>element.firstChild(IE6-7)
    9==>获取兄弟节点
      a==>element.nextSibling、、、、element.nextElementSibling
      b==>element.previousSibling,element.previousElementSibling
    10==>设置属性:setAttribute( attr, value)
    11==>获取属性值:getAttribute(attr)
    12==>删除属性:removeAttribute(attr)

    13==>创建新的元素节点 var p = document.createElement("p")

    14==>新增元素节点添加到某节点做子元素,element.appendChild(element);

      注意:会先将新的元素节点从原文档树中先删除,然后再append

    15==>删除某个子元素节点,element.removeChild(element)

    16==>在已有的子节点前插入一个新的子节点。node.insertBefore(newnode,existingnode)

    17==>table中有以下几个便捷用法,首先获取到table,var table = document.getElementById("");

      a==>document.getElementsByTagName("table").getElementsByTagName("tbody")[0].getElementsByTagName("tr")[1].getElementsByTagName("td")[3]

      b==>document.getElementsByTagName("table").tBodies[0].rows[1].cells[3]

    18==>上下滚动var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;

    19==>可视区域的高: document.documentElement.clientHeight

    20==>可视区域的宽:document.documentElement.clientWidth

    21==>浏览器版本号:window.navigator.userAgent

    22==>window.onload页面加载完毕事件

    23==>window.onscroll翻页事件

    24==>window.open("url","_self/_blank"),打开新标签页

    25==>window.close()关闭标签页

    26==>在浏览器中单击鼠标右边,弹出菜单的事件是 document.oncontextmenu,可以用来屏蔽默认菜单,并且自定义菜单

    updating

  • 相关阅读:
    增强iOS应用程序性能的提示和技巧(25个)
    [iOS]用instancetype代替id作返回类型有什么好处?
    把cygwin加入右键菜单
    NSRange
    Centos7下安装MySQL
    (转)php 操作redis全部方法。
    unbuntu 安装php5.6
    unbuntu 安装nginx
    unbuntu 安装MySQL
    Ubuntu16.04下实现MySQL主从复制
  • 原文地址:https://www.cnblogs.com/-beyond/p/6034944.html
Copyright © 2011-2022 走看看