提示:不要看本文章,本文章知识记录用的,而且这个本机半途中断了
图片无法观看,请谅解,这文章只是备份的懂吗。请不要看文章
本文章的文档:下载:https://wwpx.lanzouw.com/i4HVC0qsking 密码:a1dn 考虑有人需要
在html文档中 写上 中间写javascript代码 type 指定脚本类型为JavaScript 这里会把代码加入
里面
或者把javascript 代码写入一个文件 后辍名为.js 也可以不用 导入时候 默认是当JavaScript来执行的 把JavaScript 代码文件 和 html文档放入同一个 目录
在
javaScript 注释 // 或者 /**/ 如果用html注释来注释JavaScript 代码 应该 // -->
JavaScript 变量
定义变量无初始值默认为undefined
var关键字 定义变量
var age,age1;
let关键字 定于的变量只能在 代码块内有效 局部变量
const关键字 定义的变量 是常量 不能修改
JavaScript 数据类型
两种类型:基本类型,引用类型
查看数据类型typeof x 或者 带括号 typeof (x)
基本类型:
String类型: 双引号或单引号括起来,双引号 括 双引号 要\ 或者 单双引号合用
Number类型:Infinity 大于 2的53次方-1 (无穷大)
-Infinity 小于 2的-53次方-1 (无穷小)
NaN 表示无效 或者未定义的数字运算
支持2e3这样
Boolean 类型: true 或者false
Null类型 :用来定义空指针对象
Undefined 类型: 表示未定义
Symbol 类型:表示独一无二类型 即使数值是相等的 也不是同一个
引用类型
Object类型:
Array类型:可以通过下标来访问数组的元素
Function类型:括号可以带参数
JavaScript 运算符号
算术运算赋值运算 字符串运算+ 自增自减 比较===全等 数组等 类型也等
!==数组不等 或者类型不等 逻辑运算 三元运算 位运算 其他没有说与c语言一样
javaScript 运算优先级和结合顺序 需要去查
JavaScript 输出
alert弹窗 因为是window对象的函数 严格是window.alert()
confirm函数 和alert一样 但是有返回值
Console.log(); 函数 是用来 调试的,在浏览器的console控制台 会自动显示
document.write() 函数 往html文档的 body 添加 html或者javaScript 代码
innerHTML 属性 获取标签的内容 或者设置标签的内存
这样设置标签内容赋值就好
JavaScript 条件语句
和c差不多的 if else 语句
也有switch (表达式){
case 值1:
语句1
case 值2:
语句2
default:
}
JavaScript 也有while循环 do while 循环
和c一样
for循环
for(var i=0;i<=10 i++){
语句
}
JavaScript for in 循环 for of 循环
for(var value in Person){
语句
}
此循环会一直在Person 中取值 赋 给value 如何执行 语句
遍历对象而生
for(var value of Person){
语句
}
遍历数组用for of 循环 轻松遍历 字符串 数组
break 和continue 语句和c语言一样
标签语句:标识符: 标识符随意 后面加冒号 就是 标签语句了
outerloop:
一层循环
iuterloop:
二层循环
break outerloop;
当执行到break循环时候 就直接结束 outerloop的外层循环 内层循环也就会结束
javaScript 函数 (可以嵌套使用)
两种方法
f为函数名 name为变量 可以赋初始值,如果调用函数时候没有参数 就默认值
这种方法定义函数
我们通过f1来调用函数,当然 f1可以被赋值,如果右return 语句的话
函数也可以有名字,如果把名字省略就是匿名函数
JavaScript 加载时候,先加载 函数,函数在哪个位置都可以调用,不像c语言,要定义 在调用
但是第二种的定义函数只能在定义函数后调用,因为要赋值,就不加载函数
而且第二种在}之后 还要加;号
javaScript时间处理event
用户与页面交互,单机按钮啊,鼠标点击啊。键盘等啊。
事件 | 描述 | |
鼠标、键盘事件 | onclick | 点击鼠标时触发此事件 |
ondblclick | 双击鼠标时触发此事件 | |
onmousedown | 按下鼠标时触发此事件 | |
onmouseup | 鼠标按下后又松开时触发此事件 | |
onmouseover | 当鼠标移动到某个元素上方时触发此事件 | |
onmousemove | 移动鼠标时触发此事件 | |
onmouseout | 当鼠标离开某个元素范围时触发此事件 | |
onkeypress | 当按下并松开键盘上的某个键时触发此事件 | |
onkeydown | 当按下键盘上的某个按键时触发此事件 | |
onkeyup | 当放开键盘上的某个按键时触发此事件 | |
窗口事件 | onabort | 图片在下载过程中被用户中断时触发此事件 |
onbeforeunload | 当前页面的内容将要被改变时触发此事件 | |
onerror | 出现错误时触发此事件 | |
onload | 页面内容加载完成时触发此事件 | |
onmove | 当移动浏览器的窗口时触发此事件 | |
onresize | 当改变浏览器的窗口大小时触发此事件 | |
onscroll | 当滚动浏览器的滚动条时触发此事件 | |
onstop | 当按下浏览器的停止按钮或者正在下载的文件被中断时触发此事件 | |
oncontextmenu | 当弹出右键上下文菜单时触发此事件 | |
onunload | 改变当前页面时触发此事件 | |
表单事件 | onblur | 当前元素失去焦点时触发此事件 |
onchange | 当前元素失去焦点并且元素的内容发生改变时触发此事件 | |
onfocus | 当某个元素获得焦点时触发此事件 | |
onreset | 当点击表单中的重置按钮时触发此事件 | |
onsubmit | 当提交表单时触发此事件 |
事件绑定
事件只有与html元素绑定之后才能被触发事件,最简单的一种是 在html标签 的事件属性 添加绑定
还有一种是用javaScript代码来为标签绑定事件
javaScript 事件通常有 鼠标 键盘 表单 窗口事件,另外还有其他一些事件。
onmouseover 事件 用户鼠标移动到该标签时候的 事件
onmouseout 当鼠标从该标签离开时候 触发的事件
onkeyup 当用户按下某个键 就触发的事件
4、Onkeydown 当用户按了 键盘的某个键 然后松开 触发的事件
JavaScript的作用域
变量的作用域
全局变量
在函数外定义的变量或者在最外部的函数定义的变量在子函数里面可以使用(函数可以嵌套,变量由内到外查找,如果有相同的变量,内部的变量屏蔽外部的变量)
所有window对象的属性有全局作用,实际上 定义的全局变量其实是 成为了window对象的一个属性。
变量提升(自己了解)
let使变量成为局部变量
解析构造对多个变量赋值
详细看:https://www.liaoxuefeng.com/wiki/1022910821149312/1023021187855808
JavaScript对象
对象里面全部是属性,键和值对存在,键是字符串类型,值任意类型。属性之间用, 隔开。 如:
document.write 方法望网页写东西 还有 属性逗号隔开
对象属性的键是字符串类型,单通常不用双引号括起来,但是一些除外,比如有空格,这些要双引号括起来
属性的访问:
除了属性以点来访问,对于特殊的属性还可以这种,想像数组一样访问
还有在对象外面为对象增加属性:
新增属性he name 值为小红。
删除属性:
调用方法:
javaScript数字对象
可以用十进制八进制十六进制表述整数和浮点数还可以是指数
最大值(Number.MAX_VALUE)为 ±1.7976931348623157e+308
最小值(Number.MIN_VALUE)为 ±5e-324。
最大整数是 2⁵³ - 1 最小整数是: -(2⁵³ - 1)
比如
表示无穷大的数:
NaN(非数字) 这是一个特殊值 即使 Nan和Nan比较 也是不相等的 ,只能用isNaN()函数来判断是不是Nan
以下情况会出现NaN:
Number 对象:
Number对象中 的属性:
属性 | 描述 |
Number.MAX_VALUE | JavaScript 中所能表示的最大值 |
Number.MIN_VALUE | JavaScript 中所能表示的最小值 |
Number.NaN | 非数字 |
Number.NEGATIVE_INFINITY | 负无穷,在溢出时返回 |
Number.POSITIVE_INFINITY | 正无穷,在溢出时返回 |
Number.EPSILON | 表示1 与 Number 所能表示的大于 1 的最小浮点数之间的差 |
Number.MIN_SAFE_INTEGER | 最小安全整数,即-9007199254740991 |
Number.MAX_SAFE_INTEGER | 最大安全整数,即9007199254740991 |
Number 对象中的 方法:
方法 | 描述 |
Number.parseFloat() | 将字符串转换成浮点数,和全局方法parseFloat() 作用相同 |
Number.parseInt() | 将字符串转换成整型数字,和全局方法parseInt() 作用相同 |
Number.isFinite() | 判断Number 对象是否为有穷数 |
Number.isInteger() | 判断Number 对象是否为整数 |
Number.isNaN() | 判断Number 对象是否为 NaN 类型 |
Number.isSafeInteger() | 判断Number 对象是否为安全整数,即范围为 -(2⁵³ - 1)到 2⁵³ - 1 之间的整数 |
Number.toString() | 把Number 对象转换为字符串,使用指定的基数 |
Number.toLocaleString() | 把Number 对象转换为字符串,使用本地数字格式顺序 |
Number.toFixed() | 把Number 对象转换为字符串,结果的小数点后有指定位数的数字 |
Number.toExponential() | 把Number 对象的值转换为指数计数法 |
Number.toPrecision() | 把Number 对象格式化为指定的长度 |
Number.valueOf() | 返回一个Number 对象的基本数字值 |
JavaScript String 对象
字符串有属性也有方法
属性:
属性 | 描述 |
constructor | 获取创建此对象的String() 函数的引用 |
length | 获取字符串的长度 |
prototype | 通过该属性您可以向对象中添加属性和方法 |
方法:
方法 | 描述 |
anchor() | 创建一个HTML 锚点,即生成一个标签,标签的name 属性为 anchor() 方法中的参数 |
big() | 用大号字体显示字符串 |
blink() | 显示闪动的字符串 |
bold() | 使用粗体显示字符串 |
charAt() | 返回在指定位置的字符 |
charCodeAt() | 返回指定字符的Unicode 编码 |
concat() | 拼接字符串 |
fixed() | 以打字机文本显示字符串 |
fontcolor() | 使用指定的颜色来显示字符串 |
fontsize() | 使用指定的尺寸来显示字符串 |
fromCharCode() | 将字符编码转换为一个字符串 |
indexOf() | 检索字符串,获取给定字符串在字符串对象中首次出现的位置 |
italics() | 使用斜体显示字符串 |
lastIndexOf() | 获取给定字符串在字符串对象中最后出现的位置 |
link() | 将字符串显示为链接 |
localeCompare() | 返回一个数字,并使用该数字来表示字符串对象是大于、小于还是等于给定字符串 |
match() | 根据正则表达式匹配字符串中的字符 |
replace() | 替换与正则表达式匹配的子字符串 |
search() | 获取与正则表达式相匹配字符串首次出现的位置 |
slice() | 截取字符串的片断,并将其返回 |
small() | 使用小字号来显示字符串 |
split() | 根据给定字符将字符串分割为字符串数组 |
strike() | 使用删除线来显示字符串 |
sub() | 把字符串显示为下标 |
substr() | 从指定索引位置截取指定长度的字符串 |
substring() | 截取字符串中两个指定的索引之间的字符 |
sup() | 把字符串显示为上标 |
toLocaleLowerCase() | 把字符串转换为小写 |
toLocaleUpperCase() | 把字符串转换为大写 |
toLowerCase() | 把字符串转换为小写 |
toUpperCase() | 把字符串转换为大写 |
toString() | 返回字符串 |
valueOf() | 返回某个字符串对象的原始值 |
js数组
Array的属性:
属性 | 描述 |
constructor | 返回创建数组对象的原型函数 |
length | 设置或返回数组中元素的个数 |
prototype | 通过该属性您可以向对象中添加属性和方法 |
Array的方法:
方法 | 描述 |
concat() | 拼接两个或更多的数组,并返回结果 |
copyWithin() | 从数组的指定位置拷贝元素到数组的另一个指定位置中 |
entries() | 返回数组的可迭代对象 |
every() | 检测数值元素的每个元素是否都符合条件 |
fill() | 使用一个固定值来填充数组 |
filter() | 检测数值元素,并返回符合条件所有元素的数组 |
find() | 返回符合传入函数条件的数组元素 |
findIndex() | 返回符合传入函数条件的数组元素索引 |
forEach() | 数组每个元素都执行一次回调函数 |
from() | 通过给定的对象中创建一个数组 |
includes() | 判断一个数组是否包含一个指定的值 |
indexOf() | 搜索数组中的元素,并返回它所在的位置 |
isArray() | 判断对象是否为数组 |
join() | 把数组的所有元素放入一个字符串 |
keys() | 返回数组的可迭代对象,包含原始数组的键(key) |
lastIndexOf() | 搜索数组中的元素,并返回它最后出现的位置 |
map() | 通过指定函数处理数组的每个元素,并返回处理后的数组 |
pop() | 删除数组的最后一个元素并返回删除的元素 |
push() | 向数组的末尾添加一个或更多元素,并返回数组的长度 |
reduce() | 累加(从左到右)数组中的所有元素,并返回结果 |
reduceRight() | 累加(从右到左)数组中的所有元素,并返回结果 |
reverse() | 反转数组中元素的顺序 |
shift() | 删除并返回数组的第一个元素 |
slice() | 截取数组的一部分,并返回这个新的数组 |
some() | 检测数组元素中是否有元素符合指定条件 |
sort() | 对数组的元素进行排序 |
splice() | 从数组中添加或删除元素 |
toString() | 把数组转换为字符串,并返回结果 |
unshift() | 向数组的开头添加一个或多个元素,并返回新数组的长度 |
valueOf() | 返回数组对象的原始值 |