js基础中

条件判断语句
if语句

练习

var score=prompt("·········");

alert(score);

条件分支语句

也叫switch语句

语法:switch(条件表达式){

case 表达式:

语句····

break;

case 表达式:

语句····

break;

......

default:

语句....

break;

}

循环语句

通过循环语句可以反复执行一段代码

while循环

语法:

while(条件表达式)

{

语句...

}

先对条件表达式进行判断,再循环

死循环在开发中慎用

do while循环

for循环

对象

Object,除了五种基本数据类型,其余全是对象

对象属于一种复合的数据类型,在对象中可以保存多个不同数据类型的属性

对象的分类

1.内建对象

由ES标准中定义的对象,在任何ES实现中都可以使用。比如:Math,String,Number,Function,Object....

2.宿主对象

由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象。比如:

BOM,DOM

3.自定义对象

由开发人员自己创建的对象

对象的创建
向对象中添加属性

读取对象中的属性

修改对象的属性值

属性名和属性值

属性名

对象的属性名不强制要求遵守标识符的规范,什么乱七八糟的名字都可以使用,但是尽量按照标识符的规范

使用[]这种形式去操作属性,更加的灵活,在[]中可以直接传递一个变量,这样变量值是多少就会读取那个属性

属性值

JS对象的属性值,可以是任意的数据类型,甚至也可以是一个对象,或者一个函数

对象字面量

使用对象字面量来创建一个对象

使用对象字面量,可以在创建对象时,直接指定对象中的属性

语法:{属性名:属性值,属性名:属性值······}

对象字面量的属性名可以加引号也可以不加,建议不加。如果使用一些特殊的名字,必须加引号。

方法

函数也可以也可以称为对象的属性,如果一个函数作为一个对象的属性保存,那我们称这个函数是这个对象的方法。

调用这个函数就说调用对象的方法(method)

但它只是名称上的区别,没有其他区别

函数

函数的简介

函数也是一个对象

函数可以封装一些功能(代码),在需要时可以执行这些功能,可以保存一些代码在需要的时候用。

使用typeof检查一个函数对象时,会返回function

创建一个对象

使用函数声明来创建一个函数

使用函数表达式来创建一个函数(创建一个匿名函数)

函数的参数

调用函数时,解析器不会检查实参的数量,多余实参不会被赋值。如果实参的数量少于形参的数量,则没有对应实参的形参将是undefined

函数的实参可以是任意数据的类型

函数的返回值

可以使用return来设置函数返回值

语法:

return 值;

return后面的值将会作为函数执行结果返回,可以定义一个变量来接收这一结果

return后面的语句都不会执行。

如果return语句后不跟任何值就相当于返回一个undefined,如果不写return,也会返回undefined.

返回值的类型

返回值可以是任意一个数据类型,也可以是一个对象,也可以是一个函数

立即执行函数

正则表达式

简介

正则表达式用于定义一些字符串的规则

计算机可以根据正则表达式,来检查一个字符串是否符合规则,或者将字符串中符合规则的内容提取出来。

创建正则表达式对象

语法:

var 变量=new RegExp("正则表达式","匹配模式");(需要两个参数,两个参数都是字符串)

使用typeof检查正则对象会返回object

正则表达式的方法

test()

使用这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合返回true,否则返回false

var reg=new RegExp("a");可以来检查一个字符串是否符合正则表达式的规则。

在构造函数中可以传递一个匹配模式作为第二个参数,可以是i(忽略大小写) g(全局匹配模式)

找什么就写什么

正则语法
使用字面量来创建正则表达式

语法:var 变量=/正则表达式/匹配模式

var reg=new RegExp(“a”,“i”);

reg=/a/i;

console.log(reg); 结果为true;

使用字面量的方式更加简单,使用构造函数更加灵活

[0-9] 任意数字

字符串和正则相关的方法

split()

可以将一个字符串拆分成一个数组

根据任意字母来将字符串拆分,方法中可以传递一个正则表达式作为参数,这样方法将会根据正则表达式去拆分字符串

match()

可以根据正则表达式,从一个字符串中将符合条件的内容提取出来

match()会将匹配到的内容封装到一个数组中返回,即使只查询到一个结果

replace()

正则表达式的语法
量词

通过量词可以设置一个内容出现的次数

{n}正好出现n次

{m,n}出现m~n次

{m,}出现m次以上

+ 至少一个,相当于{1,}

* 0个或者多个,相当于{0,}

?0个或者1个,相当于{0,1}

检查一个字符串是否以哪个字母开头用^

^表示开头

$表示结尾

reg=/^a/ 匹配开头那个a

console.log(reg.test("abbbde"));

结果为true

reg=/a$/ 匹配结尾那个a

如果正则表达式中同时使用^$,则要求字符串必须完全符合正则表达式


检查一个字符串是否含有 .

. 表示任意字符

在正则表达式中使用\作为转义字符

\.来表示

\\ 表示 \

注意

使用构造函数时,由于它的参数是一个字符串,而\是字符串中的转义字符

如果要使用\则需要使用\\来代替

DOM

简介

dom查询
获取元素节点

节点

常用节点分为四类:

文档节点:整个HTML节点

元素节点:HTML文档中的HTML标签

属性节点:元素的属性

文本节点:HTML标签的内容

浏览器已经为我们提供文档节点,对象是window属性

可以在页面中直接使用,文档节点代表的是整个网页

获取到button对象

var btn=document.getElementById("btn");

修改按钮的文字

btn.innerHTML="文字内容";

全选练习
全选按钮

点击按钮后,全被选中

1.为checkedAllBtn绑定单击响应函数

事件

可以在事件对应的属性中设置一些js代码,这样当事件被触发时,这些代码将会执行

onclick,点击鼠标

ondblclick,点两次鼠标

onmousemove,移动鼠标

可以为按钮的对应事件绑定处理函数的形式来响应事件

像这种为单击事件绑定的函数,我们称为单击响应函数

将js代码写到页面下部就是为了可以在页面加载完毕后再执行js代码

onload

onload事件会在整个页面加载完成之后才触发
为window绑定一个onload事件,该事件对应的响应函数将会在页面加载之后进行。
window.onload = function(){
alert("hello");
};

事件的对象

当事件的响应函数被触发时,浏览器每次都会将一个事件对象作为实参传递进响应函数

在事件对象中封装了当前事件相关的一切信息,比如:鼠标的坐标,键盘哪个按键被按下,鼠标滚轮滚动的方向。

onmousemove

该事件将会在鼠标在元素中移动时被触发

clientX可以获取鼠标指针的水平坐标

clientY可以获取鼠标指针的垂直坐标

pageX和pageY可以获取鼠标相对于当前页面的坐标

练习

div随鼠标移动

事件的冒泡(Bubble)

所谓的冒泡指的就是事件的向上传导,当后代元素上的事件被触发时,其祖先元素的相同事件也会被触发

为body绑定一个单击响应函数

document.body.οnclick=function(){

};

事件的委派

指将事件统一绑定给共同的祖先元素,这样当后代上的祖先元素触发时,会一直冒泡到祖先元素,从而通过祖先元素的响应函数来处理事件

事件委派是利用了冒泡,通过委派可以减少事件绑定的次数,提高程序的性能

实现只绑定一次事件,即可应用到多个的元素上,即使元素是后添加的

可以尝试将其绑定给元素的共同祖先元素

事件的绑定

使用addEventListener()可以同时为一个为元素的相同事件绑定多个响应函数,这样当事件被触发时,响应函数将会按照函数的绑定顺序执行

定时器

简介

如果希望一段程序可以每隔一段时间执行一次,可以使用定时调用

setInterval()

--定时调用

--可以将一个函数每隔一段时间执行一次

--延时调用

延时调用一个函数不马上执行,而是隔一段时间后再执行,而且只会执行一次

延时调用和定时调用的区别

定时调用会执行多次,延时调用只会执行一次

延时调用和定时调用实际上是可以互相调用的

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值