js入门教程

.JS

一.数据类型

1. 基本数据类型(3):数值、字符串、布尔   

2. 复合数据类型(2):数组、对象  

3. 特殊数据类型(2):空(null)、未定义(undefined)

二.命名规则

字母、数字、 $、下划线,但不能以数字开头。严格区分大小写,(文本输出:document.write

JavaScript程序的注释 // 单行注释   /*多行注释   多行注释*/

三.基本数据类型

1. 类型转换 parseInt()parseFloat()isNaN();

2. 基本类型声明: var a=”斯蒂芬”; var b=12; var c=true; 函数中变量用var 声明是局部变量,不用var声明是全局变量

 查看变量类型 typeof(),:typeof(a);

四.数组

1. 类型声明: var c=[“微软”,1212.3true];   var a=new Array();   a=new Array(“微软”,1212.3true);   

2. 数组处理: var arr=[“微软”,1212.3true];

扫描二维码关注公众号,回复: 1337505 查看本文章

(1.默认调用toString方法:document.write(arr);   (2.添加数据: arr.concat(“chm”);

(3.在数组的每一个元素中间加上给定的字符:alert(arr.join("-"));   (4.将所有数组元素反转:alert(arr.reverse());

(5.截取数组:arr.slice(2,5);  包前不包后,如果只有一个值,取到最后  (6.数组长度 arr.length;

(7.数组起始位置添加元素:数组名.unshift(); (8.数组起始位置移除元素:数组名.shift();

(9.数组末尾元素追加:数组名.push(); (10.数组末尾元素去除:数组名.pop();

(11.数组排序:数组名.sort( [ function ] ); (12.数组元素删除:数组名.splice();

3.数组遍历

   (1.利用数组的length属性,索引遍历数组

    for 循环语句 :

    for(初始化表达式 ; 循环条件表达式 ; 循环后的操作表达式)

    {   执行语句块;   }

 (2.利用for(变量 in 数组名){ 数组名[变量] } 遍历数组;

五.对象

1.分类:(1.浏览器对象:窗口对象windows、文档对象document

   (2.内置对象:   字符串对象String、数学对象Math、日期对象Date

   (3.HTML对象: 各种HTML标签

2.具体用法:

(1.窗口对象:1. window.alert("确定要退出吗?");  2.window.confirm("是否提交?");  3. print(); 打印

4.window.prompt("请输入年份", 2017);     5.setTimeout(); 单次定时器  setInterval(); 多次定时器  

取消定时器temp=setInterval("test()",1000);  function(){clearInterval(temp); }

temp=setTimeout("test()",1000);function stop(){clearTimeout(temp);}

6. open(); 打开新窗口     7.close();关闭窗口  8.history.back();返回到前一页  history.forward(); 前进到下一页

9.location.reload();刷新  location=”index.html”/location.href=”index.html”;跳转到index.html页面

10.history.go(0);刷新;history.go(2);前进两页;history.go(-1);后退一页

(2.文档对象:1. document.write(“输出内容”); 2.获取id名:var id=document.getElementById(“id”);  单个对象

3.获取name名:var id=document.getElementsByName(“name”);   一组对象

4.获取标签名 var p=document.getElementsByTagName(“p”); 一组对象

5.获取classvar c=document.getElementsByClassName("c"); 一组对象

6.获取表单:var forms=document.forms 一组对象 var form1=document.forms[0]获取第一个formsubmit提交

例如 btn.onclick=function () { document.forms[0].submit();   }

 用表单的name名获取表单document.name.submit();

(3.字符串对象:1.字符串长度a.length    2.添加数据: arr.concat(“chm”);   

3.截取字符串:单个a.charAt(1);一串a.slice(2,5); a.submit(1,3).substr(1);  

4.将字符串转化为数学运算符:alert(eval(“1+3”));  5.字符串分割数组:字符串a.split(“,”)

6.indexOf(string,[int])返回字符串首次出现的位置,如果没有返回-1

      7.lastIndexOf()从右向左查,返回字符串首次出现的位置,如果没有返回-1

8.toLowerCase()字符串转化为小写;    9.toUpperCase()字符串转化为大写;

(4.数学对象:1.Math.abs(x)返回x的绝对值;  2.Math.min(x,y)返回xy中较小的值;

3.Math.max(x,y)返回xy中较大的值; 4.Math.random()返回0-1的随机数;

5.Math.round()四舍五入取整; 6.Math.floor()向下取整;  7.Math.ceil()向上取整;

8.Math.abs(num)  绝对值      9.Math.ceil(19.3)  12,向上取  10.Math.floor(11.8)  //11  向下取整

11.Math.pow(x,y)  xy次方 12.Math.sqrt(num)  开平方

(5.日期对象:1.Date后有参数 则为参数的时间  例:var time = new Date ('October 15, 2011, 10:30:00');

2.Date后如果没有参数  则表示当前时间  例:var today = new Date ();

2.Date对象的getset方法:SecondsMinutes(0-59);Hour小时(0-23);Month(0-11);Day星期(0-6)Date(1-31);

 

 

(6.HTML对象:  1.属性操作  getAttribute(); 获取属性值  setAttribute();设置属性值  removeAttribute();删除属性值   

例:a.getAttribute(“type”);获取对象atype值  a.getAttribute(“name”);获取对象aname

a.setAttribute("value", "12345") 设置对象avalue值为12345;

2.内容的操作:innerHTML;获取标记之间的所有内容   innerText || textContent; 获取标记的文本内容

3.元素创建:document.createElement();创建元素节点  document.createTextNode();创建文本节点

offsetLeft,offsetTop,clientWidth,clientHeight,offsetHeight,offsetWidth

 

. 事件

1.一般事件:onfocus获取焦点  onblur 失去焦点  onchang 内容改变

注意:input框失去焦点触发函数

<input type="text" value="${o.count}" name="count"  onblur="changeNum(this)">

Js获取值:参数不能写this

function changeNum(s){  alert(s.value);   };

2.页面事件:  onload;事件加载 onunload;退出、刷新页面

3.鼠标事件:onclick 左键单击  ondblclick 左键双击  oncontextmenu 点击鼠标右键 onmouseleave鼠标滑出(解决冒泡)

onmouseover鼠标滑上  onmouseout鼠标滑出    onmousedown鼠标按键按下  onmouseup鼠标按键松开    

onmousemove鼠标移动

4.键盘事件:onkeydown;按下键盘按键   onkeyup;松开键盘按键  onkeypress; 键盘按键被按下并释放

5.表单事件:onsubmit;表单提交  oncutoncopy;onpaste  文本域或文本剪切、复制和粘贴   onselect;文本选中

6.event事件:event对象代表事件的状态,比如事件在其中发生的元素,键盘按键的状态,鼠标的位置,鼠标按钮的状态.

event = e || window.event;  键盘按键Codeevent.keyCode;  X轴坐标event.clientX;  Y轴坐标event.clientY;

offsetLeft,offsetTop,clientWidth,clientHeight,offsetHeight,offsetWidth

1).事件绑定:addEventListener()/attachEvent();  

2).解除绑定:removeEventListener()/detachEvent();

3).阻止事件冒泡:cancelBubble=true/stopPropagation()

七.正则

1.匹配内容 .(点):匹配除换行符之外的任何一个字符。IE[^\n],其它[^\n\r]

      \d:匹配数字 [0-9]  \D:匹配非数字字符 [^0-9] \w:匹配字母数字和下划线[a-zA-Z0-9_]

        \W:匹配除字母数字下划线之外的字符 [^a-zA-Z0-9_] \s:匹配一个空白字符 [ \n\r\t\f\x0B]

        \S:匹配一个非空白字符 [^ \n\r\t\f\x0B]      .  : 匹配除换行符以外的任意单个字符  []:匹配任意单个字符

转义字符\( ) :子字符集|:或者

2.匹配次数:

    ?匹配0次或1 * 匹配0次或多次 + 匹配1次或多次

{2,7}  匹配2次到7 {6}匹配6{6,}   匹配6次以上 ([1][89])|([2-9][0-9])

3.匹配方式

注意:正则表达式在前,匹配内容在后

1. var a=/^[\u4e00-\u9fa5]{2,4}$/

 var name=document.ElementsByName(“name”)[0].value;

var name_tip=document.ElementsByName(“name_tip”)[0];

  If(a.test(name) ){  

name_tip.InnerHTMl=”格式错误”;

}

   例:邮箱 Var pattern=/^([a-zA-Z0-9_\.\-]+)@([a-zA-Z0-9_\.\-]+)\.([a-zA-Z]{2,4})$/;

           Var str=[email protected]  arlet(pattern.test(str))

   匹配姓名:[\u4e00-\u9fa5]{2,4}           行首行尾空格:^\s*|\s*$ 网址:[a-zA-z]+://[^\s]*

   Email^\w+@[a-z0-9]+(\.[a-z]+){1,3}$        QQ号:[1-9][0-9]{4,9}        邮政编码:[1-9]\d{5}

   身份证:[1-9]\d{14}|[1-9]\d{17}|[1-9]\d{16}x

猜你喜欢

转载自blog.csdn.net/qq_38266792/article/details/80525083