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 + ;
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","女",); //创建一个数组,并初始化数组的元素
var arr = ["张三","男",,"安徽"];

数组的操作

  • 读取元素:读取已经存在下标的元素。如: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

php中文网--JavaScript的更多相关文章

  1. javascript 框架、根基技巧、布局、CSS、控件 JavaScript 类库

    预筹备之 JavaScript 今朝支流的 JavaScript 框架排名中,jQuery 和 Ext 可算是佼佼者,得到了用户的普遍好评.海内的一些框架许多也是模仿 jQuery 对 JavaScr ...

  2. 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍

    前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...

  3. Javascript对象属性与方法汇总

    Javascript对象属性与方法汇总 发布时间:2015-03-06 编辑:www.jquerycn.cn 详细介绍下,javascript对象属性与对象方法的相关知识,包括javascript字符 ...

  4. CoffeeScript飞一样的写javascript

    之前看到同事在使用coffeescript写js,当我看到那简介的coffee文件,就深深的被coffescript吸引了,简洁的语法,熟练之后会大大提升javascript的开发速度,写脚本也能像飞 ...

  5. JavaScript中非常强大的Swiper

    刚开始学习javaScript的时候,做轮播图(比如手机淘宝首页的广告位置)是使用html和css结合js的for语句.传参等知识写出来的.但学到js事件时,其实用Swiper更加好写,Swiper的 ...

  6. [JavaScript] AMD和CMD概述

    1. cmd 和 amd 在浏览器中,受网络和浏览器渲染的制约,不能采用同步加载,只能采用异步加载.于是 AMD 规范应运而生 2. AMD AMD(Asynchronous Module Defin ...

  7. 每个JavaScript工程师都应懂的33个概念

    摘要: 基础很重要啊! 原文:33 concepts every JavaScript developer should know 译文:每个 JavaScript 工程师都应懂的33个概念 作者:s ...

  8. JavaScript学习总结(六)——前端模块化开发

    早期的javascript版本没有块级作用域.没有类.没有包.也没有模块,这样会带来一些问题,如复用.依赖.冲突.代码组织混乱等,随着前端的膨胀,模块化显得非常迫切. 前端模块化规范如下: 一.前端模 ...

  9. Javascript框架

    网易开源框架http://www.oschina.net/p/nej http://www.linuxeden.com/html/develop/20120716/127404.html 16 款最流 ...

随机推荐

  1. Linux命令-磁盘管理(二)

    Linux命令-磁盘管理(二) Linux mmount命令 Linux mmount命令用于挂入MS-DOS文件系统. mmount为mtools工具指令,可根据[mount参数]中的设置,将磁盘内 ...

  2. git远程相关

    git remote add origin git仓库地址 // 添加了远程仓库 git remote remove origin // 移除远程仓库 git push -u origin maste ...

  3. scrollWidth、clientWidth、offsetWidth、width的区别

    scrollWidth:对象的实际内容的宽度,不包边线宽度,会随对象中内容超过可视区后而变大. clientWidth:对象内容的可视区的宽度,不包滚动条等边线,会随对象显示大小的变化而改变. off ...

  4. Wazuh 实操

    https://www.jianshu.com/p/40c911a5628e?from=timeline&isappinstalled=0

  5. leetcode 172. Factorial Trailing Zeroes(阶乘的末尾有多少个0)

    数字的末尾为0实际上就是乘以了10,20.30.40其实本质上都是10,只不过是10的倍数.10只能通过2*5来获得,但是2的个数众多,用作判断不准确. 以20的阶乘为例子,造成末尾为0的数字其实就是 ...

  6. Link标签

    Link标签的属性:rel定义当前文档与目标文档之间的关系. rev定义目标文档与当前文档之间的关系. Link和@import的区别:   1.隶属上的差别      link是一个html的一个标 ...

  7. kotlin之布尔类型

    var flag1 :Boolean = true val flag2 :Boolean = false if(flag1&&!flag2){ println("flag1& ...

  8. nodejs之express框架商品管理系统登录功能

    1.该系统主要使用express.body-parser.express-session.ejs.mongodb-connect . npm install express --save npm in ...

  9. python接口测试之mock(一)

    在现在的软件开发过程中,特别是app的部分,需要的很多数据以及内容,都是来自server端的API,但是不能保证在客户端开发的时候,api在 server端已经开发完成,专门等着前端来调用,理想的情况 ...

  10. 简单的servlet下载

    <servlet> <servlet-name>servletTest</servlet-name> <servlet-class>com.shangs ...