php中文网--JavaScript

PHP中文网:http://www.php.cn/course/18.html

常用的两个客户端输出方法

document.write("你好呀js"); 

  • 描述:在网页的<body>标记,输出str的内容。

  • document意思“文档”,就是整个网页了。

  • document是一个文档对象,代表整个网页。

window.alert("这是窗口对象的警告方法");

  • 描述:在当前窗口中弹出一个警告对话框。

  • window代表当前浏览器窗口,window是一个窗口对象。

  • alert()方法:弹出一个对话框

变量的声明

  • 语法格式:var 变量名 = 变量值

  • 声明变量是使用系统关键字var来进行的。

var x = "aj";
var y = x + 80;
document.write(y); //aj80

变量数据类型

  • 数值型:整型、浮点型、NaN(当将其它数据类型,转成数值型,转不过去,但程序又不能报错,这时将返回一个NaN的值)
  • 字符型:用单引号或双引号,引起来的一个字串。

    常用的转义字符有:\’、\”、\\、\r、\n等。当浏览器遇到反斜杠(\)时,将会对其后的一个字符进行特殊对待,当成普通字符来对待

  • 布尔型:布尔型又称逻辑型。只有两个值:true(真)、false(假)。
  • undefined:当一个变量定义,但未赋值时,将返回未定义型,未定义型的值只有一个undefined
  • null:当一个对象不存在时,将返回空型,空型的值只有一个null。如果你想清除一个变量的值的话,可以给赋一个null的值。
  • array
  • object
  • function

变量的数据类型转换

var result = Boolean(x);
var result = Number(x);
var result = String(x);

变量的数据类型判断

parseFloat(var x)系统函数、全局函数

  • 功能:在一个字符串中,从左往右提取浮点型;遇到非浮点型内容,则停止提取,并返回结果。
  • 注:如果第一个字符是非浮点型,则立即停止,并返回NaN。

parseInt(var x)系统函数、全局函数

  • 功能:在一个字符串中,从左往右提取整型。如果遇到非整型的内容,则停止提取,并返回结果。
  • 注:如果第一个字符就是非整数,则立即停止,并返回NaN。

typeof(var x)可以测试一个变量的类型

数组的创建方法

var arr = new Array();              //创建一个空数组
var arr = new Array("aj","女",21);  //创建一个数组,并初始化数组的元素
var arr = ["张三","",25,"安徽"];      

数组的操作

  • 读取元素:读取已经存在下标的元素。如:var age = arr[2];

  • 修改元素:修改已经存在下标的元素的值(重新赋值)。如:arr[2] = 26;

  • 增加元素:添加一个不存在的下标的元素。如:arr[0] = 21;

  • 删除元素:使用关键字delete,只能删除元素的值,而下标还在。delete(arr[0]);

  • 数组长度:arr.length

Array对象的属性和方法

join()

  • 功能:将一个数组转成字符串。返回一个字符串。

  • 语法:arrObj.join(连接号)

  • 说明:将一个数组,用指定的“连接号”连接成一个字符串。

<script>
    var str = "北京,上海,深圳,南京,合肥";   //将以下字符串转成数组, 然后再转成字符串
    var arr=str.split(",");//转成数组
    str = arr.join("/") ;//再转换成字符串
    document.write("类型是:"+typeof(str)+",字符串为:"+str);//类型是:string,字符串为:北京/上海/深圳/南京/合肥
</script>

String对象的属性和方法

  •  length:获取字符串的长度。如:var len = strObj.length

  •  toLowerCase():将字符串中的字母转成全小写。如:strObj.toLowerCase()

  •  toUpperCase():将字符串中的字母转成全大写。如:strObj.toUpperCase()

indexOf()

  • 功能:返回一个子字符串在原始字符串中的索引值(查找顺序从左往右查找)。如果没有找到,则返回-1。

  • 语法:strObj.indexOf(substr)

charAt(index)

  • 功能:返回指定下标位置的一个字符。如果没有找到,则返回空字符串。
  • 语法:strObj.charAt(index)

substr()

  • 功能:在原始字符串,返回一个子字符串。

  • 语法:strObj.substr(startIndex [ , length])

  • 说明:从下标startIndex起,返回length个字符。

  • 参数:

    •  startIndex表示查找的起始索引号;

    •  length可选,返回几个字符。如果省略,一直返回到结尾

substring()

  • 功能:在原始字符串,返回一个子字符串。

  • 语法:strObj.substring(startIndex [ , endIndex])

  • 说明:返回从startIndex开始索引值到endIndex结束索引值之间的所有字符。

  • 参数:

    • startIndex:代表开始索引值。

    • endIndex:可选项,代表结束索引值。如果省略,一般返回到结尾的所有的字符。

split():将一个字符串转成数组

  • 功能:将一个字符串切割成若干段。返回一个数组。

  • 语法:strObj.split(分割号)

  • 参数:参数是一个分割号的字符串。用指定的分割号将字符串切成若干段。

<script>
  var str="Hello JavaScript";    //以空格为分割号,就字符串Hello JavaScript,分割成数组Hello,JavaScript 
   document.write(str.split(" "))  //Hello,JavaScript     
</script>

JavaScript中的拷贝传值和引用传值

拷贝传值:基本数据类型都是“拷贝传值”。

引用传址:复合数据类型都是“引用传地址”。

JavaScript中的匿名函数

匿名函数:即没有名字的函数。

  • 匿名函数,不能单独定义的,也不能单独调用。

  • 匿名函数,一般是作为数据给其它变量赋值的。可以给普通变量、数组元素、对象的属性赋值。

var a=function(name,age)                   //将函数值赋值给变量a,此时变量a就是“函数型”变量
{
    window.alert("我叫"+name+"今年"+age+"岁");
}
a("小明",20);                               //调用函数
var b=a;                                   //将变量a的地址,拷贝一份传给变量b
b("小白",22);

JavaScript中的事件

事件:指的是文档或者浏览器窗口中发生的一些特定交互瞬间。我们可以通过侦听器(或者处理程序)来预定事件,以便事件发生的时候执行相应的代码。

事件处理程序:我们用户在页面中进行的点击这个动作,鼠标移动的动作,网页页面加载完成的动作等,都可以称之为事件名称,即:onclick、mousemove、load等都是事件的名称。响应某个事件的函数则称为事件处理程序,或者叫做事件侦听器。

鼠标单击事件(onclick)

onclick是鼠标单击事件,当在网页上单击鼠标时,就会发生该事件。同时onclick事件调用的程序块就会被执行,通常与按钮一起使用。

<script>
    function fun1(){
        window.alert("欢迎")
    } 
</script>
<form>   <input name="点我看看" type="button" value="点我看看" onclick="fun1()"/> </form>

鼠标经过事件(onmouseover)

鼠标经过事件,当鼠标移到一个对象上时,该对象就触发onmouseover事件,并执行onmouseover事件调用的程序。

<input name="" type="button" value="提交" onmouseover="fun()"/>

鼠标移开事件(onmouseout)

鼠标移开事件,当鼠标移开当前对象时,执行onmouseout调用的程序。

<input name="" type="button" value="提交之后移开鼠标" onmouseout="fun()"/>

光标聚焦事件(onfocus)

当网页中的对象获得聚点时,执行onfocus调用的程序就会被执行。

光标失焦事件(onblur)

onblur事件与onfocus是相对事件,当光标离开当前获得聚焦对象的时候,触发onblur事件,同时执行被调用的程序。

内容选中事件(onselect)

选中事件,当文本框或者文本域中的文字被选中时,触发onselect事件,同时调用的程序就会被执行。

文本框内容改变事件(onchange

通过改变文本框的内容来触发onchange事件,同时执行被调用的程序。

加载事件(onload

事件会在页面加载完成后,立即发生,同时执行被调用的程序。

注意:加载页面时,触发onload事件,事件写在<body>标签内。

window对象方法

//循环遍历window对象的所有属性
for(var name in window)
{
  document.write(name+"<br>");
}

alert():弹出一个警告对话框。

prompt():弹出一个输入对话框。

confirm():弹出一个确认对话框。如果单击“确定按钮”返回true,如果单击“取消”返回false。

close():关闭窗口

print():打印窗口

top:代表最顶层窗口。如:window.top

parent:代表父级窗口,主要用于框架。

self:代表当前窗口,主要用于框架中。

name:指浏览器窗口的名字或框架的名字。这个名字是给a标记的target属性来用的。

  • 设置窗口的名字:window.name = “newWin”
  • 获取窗口的名字:document.write(name);

Location地址栏对象

  • href:获取地址栏中完整的地址。可以实现JS的网页跳转。location.href = “http://www.sina.com.cn”;

  • hostname:主机名

  • pathname:文件路径及文件名

  • search:查询字符串。

  • protocol:协议,如:http://、ftp://

  • hash:锚点名称。如:#top

  • reload([true]):刷新网页。true参数表示强制刷新

history对象

  • length:历史记录的个数

  • go(n):同时可以实现“前进”和“后退。”

  • history.go(0)  刷新网页

  • history.go(-1)  后退

  •  history.go(1)   前进一步

  • history.go(3)   前进三步

  • forward():相当于浏览器的“前进”按钮

  • back():相当于浏览器的“后退”按钮

DOM中节点类型

  • document文档节点,代表整个网页,不代表任何HTML标记。但它是html节点的父节点。

  • element元素节点,指任何HTML标记。每一个HTML标记就称一个“元素节点”。它可以有文本节点和属性节点。

  • attribute属性节点。指HTML标记的属性。

  • text节点。是节点树的最底节点。

HTML DOM访问HTML元素的方法

getElementById()

  • 功能:查找网页中指定id的元素对象。

  • 语法:var obj = document.getElementById(id)

  • 参数:id是指网页中标记的id属性的值。

  • 返回值:返回一个元素对象。

  • 举例:var imgObj = document.getElementById(“img01”)

getElementsByTagName(tagName)

  • 功能:查找指定的HTML标记,返回一个数组。

  • 语法:var arrObj = parentNode.getElementsByTagName(tagName)

  • 参数:tagName是要查找的标记名称,不带尖括号。例:"li"。

  • 返回值:返回一个数组。如果只有一个节点,也返回一个数组。

  • 举例:var arrObj = ulObj.getElementsByTagName(“li”)

获取表单元素

通过网页元素的id来获取对象。document.getElementById(id)

通过HTML标签名来获取对象。parentNode.getElementsByTagName(tagName)

通过name属性来获取表单元素对象。表单中所有元素的起点都必须是document对象。

  • 语法:document.formObj.elementObj
  • 访问方式是三层结构。其中,formObj代表表单对象,elementObj代表表单元素对象。
  • 举例:document.form1.username.value.length

猜你喜欢

转载自www.cnblogs.com/jiangml/p/10783447.html