js总结

1.区分大小写

2,代码缩进

3,建议每行只写一条语句,语句一分号;结尾,则以行末作为语句结束

4,代码执行顺序:从上到下,由左到右

引用 javscript 方式:``

1,写在 head 头部,内嵌 js 代码

2,引入外部 js 文件

3,写在 body 主体

变量:

1,在程序运行过程中其值可以改变的量,是一个数据存储空间的表示,即给内存空间起别名。

2,将数值通过变量进行存储,以便程序随时使用。通俗来说,变量就是存储数据的

3,声明,赋值 var i = 10; var 是’variable’:[可变的]

4,命名规范:只能以数字,英文字母,下划线以及$符号组成,但不能以数字开头。不能使用关键字和保留字。区分大小写,用驼峰命名法

数据类型:

1,string:存储一串字符串,用双引号或单引号括起来

2,number:表示整数或浮点数

3,boolean:表示真假,true 或 false

4,undefined:变量被声明了,但未被赋值

5,null:空

判断数据类型:

1,使用 typeof 判断数据类型

2,用法:typeof(变量)或字面量

3,返回值:string,number,boolean,undefined,object:对象,null

常用的输入/输出:

1,alert():弹出提示框

2,console.log()向控制台输出信息。

3,document.write() 向网页中输出信息,代码调试。

4,prompt() 弹出输入框,获取用户输入的数据。声明一个变量以存储获取到用户输入的数据返回的数据类型是字符串。

运算符:

1,赋值运算符:=(当变量在左边的时候叫做赋值,在右边的时候叫做取值)

2,算数运算符:+,-,/,*,%

3,比较(关系)运算符:<,>,>=,<=,==,!=

4,逻辑与算符:&&,||,!

5,条件(三目)运算符:语法:条件?表达式 1:表达式 2

6,Nan:not a number 表示非数字,其自身是 number 类型。用来表示数值的一种不正常的状态,一般在计算出错时会出现。

7,isNaN():检查其参数是否是非数字,如果是非数字,则返回 true,否则返回 false。

复杂的算数运算 Math 对象:执行常见的算数任务

1,Math.abs(a);得到 a 的绝对值。

2,Math.pow(a,b);得到 a 的 b 次方

3,Math.round(a);四舍五入

4,Math.ceil(a);向上取整

5,Math.floor(a);向下取整

6,Math.random();产生随机数

7,Math.max(a,b…);返回最大值

8,Math.min(a,b…);返回最小值

9,Math.PI;返回圆周率的值

数据类型转换:

1,强制类型转换(显式转换):

转换为 number:(会从第一个字符开始解析,直到遇到非数字符号停止,并返回已解析的部分数值)

1,使用 number():如果内容可以转换成数字,则返回相应的数字(整数或者小数),如果内容不可以转换成数字,则返回 NaN,如果内容为空,则返回 0

2,使用 parseInt():将内容转换成整数(直接去掉小数)

3,使用 parseFloat():将内容转换成小数

转换为 string:

1,使用 string();

2,使用 tostring();

转换为 boolean

1,使用 Boolean();

2,自动类型转换(隐式转换):转换为 number,转换为 string,转换为 boolean

流程控制语句:

选择结构:

1,if…else

2,switch

3,if…else…if

4,比较 switch 和多重 if 选择结构的区别:共同点是都是用来处理多分支条件的结构,不同点是 switch 选择结构只能处理等值条件判断的情况,多重 if 选择结构没有 seitch 选择结构的限制,特别适合某个变量处于某个连续区间时的情况。

循环结构:

1,while

2,do…while

3,for(表达式 1[参数初始化];表达式 2[条件判断];表达式 3[更新循环变量]){循环操作}

4,for(循环变量 in 集合){}

二重循环:

1,一个循环体内又包含另一个完整的循环结构

2,外层循环变量变化一次,内层循环变量要变化一遍

3,各种循环可以互相嵌套。

数组:

1,数组是一个变量,用来存储一组数据。

2,数组得大小可以动态调整,没有长度限制,

3,可以存储任意类型的数据。

4,声明一个变量就是在内存空间划出一块合适的空间,声明一个数组就是在内存空间划出一串连续的空间。

5,创建数组:var 数组名 = new Array();//js 中的数组没有长度和类别限制。

6,为数组元素赋值:数组名[索引] = 元素值

7,获取元素值:数组名[索引]

使用字符串作为数组下标。

1,数组不仅可以使用非负整数作为索引下标,也可以使用字符串作为下标,一般称之为 key(键)

2,key 不会对 length 属性产生影响,所以不适合用普通 for 循环,而应该使用 for…in 循环(还会自动跳过 undefined 得数据)

数组常用方法

1,排序方法:sort(排序):默认按数值升序或字符顺序排列,非 string 类型会自动转换为 string

2,反转方法:reverse(反转):将数组倒叙排列

3,拼接操作:

1,join(连接):将数组拼接为 string

2,concat(合并):将多个数组拼接成一个数组

4,转换数组:tostring();将数组转换为字符串;

valueOf();返回数组对象本身;

5,迭代数组:forEach();

冒泡排序:

//冒泡排序法

for (var i = 0; i < array.length - 1; i++) {
for (var j = 0; j < array.length - i - 1; j++) {
if (array[j] > array[j + 1]) {
var temp = array[j];

array[j] = array[j + 1];

array[j+1]= temp;

}

}

}

console.log(array);

内置函数:

1,isNaN();判断是否为 NaN,如果是,返回 true;

2,isFinite();判断是否为有限数字(或可以转换为有限数字),返回 true。如果是 NaN、或者是正,负无穷大。则返回 false

自定义函数:

1,创建函数:function 函数名(参数 1,参数 2…){函数体;}

2,调用函数:函数名(参数值);

3,形参:定义函数时指定得参数,没有实际得值,占位置

4,实参:调用函数时指定得参数,有实际得值。

5,JavaScript 中调用函数时,实参得个数可以和形参得个数相等。

6,JavaScript 中没有重载得概念,后定义得同名函数会覆盖前面定义得函数。所以不要定义同名得函数。注意:在其他语言中会有重载得概念,即函数名相同,参数个数不同得多个同名函数。

7,形参和实参匹配问题:Js 中调用函数时,实参得个数可以和形参得个数不相等。

8,return 得作用:1,返回函数执行得结果,2 结束函数得执行。

9,定义函数的两种形式:

一:函数声明:function 函数名(参数){函数体}

二:函数表达式:var 变量名 = function(参数){函数体};

三:两种形式的区别,函数声明不是匿名函数,结尾没有分号;函数表达式没有名字,成为匿名函数,一般用于回调,也可能用于一次执行的函数。变量提升问题;

10,回调函数 callback:不立即执行的函数调用,满足一定条件时执行或者由别的代码调用执行

用法:调用时只写函数名,没有小括号和参数

应用:事件绑定,函数参数。

11,函数也是一种数据类型(console.log(typeof myFun);

变量作用域:

1,局部变量:在函数内声明的变量,只能在该函数内访问,函数运行结束,变量自动销毁

2,全局变量:只要不是在函数内声明的变量(在函数内未使用 var 声明,直接赋值的变量,也是全局变量),在任何位置都可以访问,当所有页面关闭时销毁

3,就近原则:如果局部变量和全局变量同名,默认访问的是全局变量。

如果想访问全局变量,必须使用 window 前缀,在一定条件下也可以使用 this 前缀。

4,js 中没有块级作用域的概念,只要不是在函数中定义的 变量都是全局变量,在其他语言中,一对花括号 {}就是一个代码块。在代码块中定义的变量在代码块外是无法访问的。es6 中可以使用关键字 let 定义变量,支持块级作用域。

解析器执行 JavaScript 代码的过程:

1,首先执预解析(全局作用域【变量提升】):将变量 var 和函数 function 的声明提前到作用域的最上面,需要注意的是变量的赋值操作不会提前。

2,然后执行代码:首先,从上往下,一行一行执行代码。当执行函数会进入函数内部,再次预解析(局部作用域)然后从上往下,一行一行的执行代码。

javascript 组成:

1,ECMAscript

2,DOM(文档对象模型)

3,BOM(浏览器对象模型)

文档对象模型(Document Object Model)是 W3C 制定的一套规范,提供了一组操作 HTML 和 XML 文档的 API,即提供一属性,方法和事件。DOM 可以把 HTML 和 XML 文档解析成一个文档树,书上的每一个分支都可以视为一个对象,通过 DOM 可以动态的操作该文档

DOM 的作用:

1,获取页面中的元素

2,获取/设置元素的属性

3,获取/设置元素的样式

4,删除/添加元素

5,绑定事件——触发响应

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZdGaKm7l-1611544030137)(<C:\Users\黄忠胜\AppData\Local\YNote\data\weixinobU7Vjic4GE4TjiFoZtThc2PB2Ig\f4c7b96cb73f4fb8b3fef482f85b672a\1605508422(1)].jpg>)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7r8QpxRL-1611544030138)(<C:\Users\黄忠胜\AppData\Local\YNote\data\weixinobU7Vjic4GE4TjiFoZtThc2PB2Ig\21cea407a0744e8997bdbff80d116369\1605508573(1)].jpg>)

window 对象常用的方法

1,alert("");显示一个带有提示信息和确定按钮的警告对话框

2,confirm(text):显示一个带有提示信息,确定和取消按钮的对话框

3,prompt(text,val):显示一个带有提示信息,确定和取消按钮以及文本输入框的对话框

4,open(url,name,options):打开具有指定名称的新窗口,并加载给定 URL 所指定的文档

5,showModalDialog():在一个模式窗口中显示指定的 HTML 文档。

6,close();关闭当前文档(FF 与 IE 规则不同)

7,setTimeout(func,delay):设置一次性定时器,经过指定毫秒值后执行某个函数

8,setInterval(func,delay):设置周期性定时器,周期循环执行某个函数

9,clearInterval(timer):清除周期性定时器

10,clearTimeout(timer):清除一次性定时器 1

window 对象的常用事件:

1,onload:一个页面或一幅图像完成加载

2,onmouseover:鼠标移到某元素之上

3,onmouseout:鼠标离开某元素时

4,onclick:当用户单击某个对象时调用的事件句柄

5,onkeydown:当某个键盘按键被按下

6,onscroll:窗口滚动条滑动

document 对象(表示整个 HTML 文档):

document 操作可分为两类:读操作,更新操作

1,属性:

bgColor:设置或检索 document 对象的背景颜色

innerHTML:把内容解析到 DOM 书上

innerText:把内容解析成纯文本

2,方法:

1,write():在当前页面中输出指定内容

2,getElementById(""):返回指定 id 的第一个对象的引用

3,getElementByName():返回带有指定名称的对象的集合,返回一个数组

4,getElementByTagName():返回带有指定标签名的对象的集合,不仅 document 对象具有此方法,其他 DOM 对象同样具有,用来在元素内部根据标签名查找。

DOM 相关类型:

1,Node:节点

Document:文档

Element:元素

Text:文本

Attr:属性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值