JavaScript模糊知识点整理
变量的命名规则:
必须以数字、字母、下划线、$组成,不能以数字开头,区分大小写,不能以关键字和保留字命名。
变量的类型:
基本数据类型
- 数字型 number 简写 num
- 字符串型 string 简写str
- 布尔型 bollean 简写bool
复合数据类型
- 数组 array 简写arr
- 对象 object 简写obj
特殊类型
- 空类型 null
- 未定义类型 underfined
运算符相关总结
运算符分类 | |
---|---|
算数运算符 | +、-、*、/、% |
赋值运算符 | = 、+=、-=、*=、/=、%= |
关系运算符 | <、<=、>、>=、==、 ===、!= |
逻辑运算符 | ||、 &&、 ! |
一元运算符 | ++ 、 – |
流程控制
顺序结构
分支结构
逻辑分支:
if(条件){
执行语句
}
--------------------------------
if(条件){
执行语句1,条件为真时执行
}else{
执行语句2,条件为假时执行
}
--------------------------------
if(条件1){
执行语句1
}else if(条件2){
执行语句2
}else if(条件3){
执行语句3
}else{
执行语句4
}
switch与if判断的区别
- if常用于判断一定范围内的数据
- switch常用于判断固定的数据
- if判断看运算符号,两个等于则判断值是否相等,三个等于则判断是否全等,switch默认判断全等
三元运算符
语法1 条件 ? 值1 : 值2
语法2 条件 ? 表达式1 : 表达式2
- 三元运算符会得到一个结果,结果根据
条件
来确定。 - 如果
条件
的值为true,会返回表达式1的值/值1 - 如果
条件
的值为false,会返回表达式2的值/值2
循环结构
类型之间的转换
转换成数值-number
-
Number()
注意Number可以把任意值转换成数值类型,但是如果字符串中有不是数字的字符,返回NaN.
-
parseint()和parseFloat()
parseInt()把字符串类型的整数或者小数都转化为整数
parseFloat()把字符串类型的整数转化为整数,小数转化为小数
-
算数运算符(最常用)
var str=‘500’;
console.log(+str); //取正
console.log(-str); //取负
转换成字符串类型 -string
- String()
- toString()
- 拼串,(最常用)
转换成布尔类型(重点)
- 所有的值都可以转换成布尔值,其中0,"",underfined,null,NaN,这几个值或转换成false,其他的都会转换成true
循环结构
break和continue
- break结束/中止for循环,立即跳出当前整个循环,即结束循环,开始执行循环后面的内容
- continue结束本次循环,进入下一次循环.立即跳出当前循环,继续下一次循环
for、while、do…while区别
- 同一个功能三种循环都可以实现
- 如果知道循环次数用for循环,不知道循环次数用while或者do…while循环
- 如果需要无条件先执行一次用do…while,否则用while
函数的参数
function 函数名(参数1,参数2,…){
逻辑代码
}
调用函数
函数名(1,2,3)
函数的两种创建方式:声明式和赋值式
通过关键字function声明:
function fn(){}
通过变量赋值(匿名函数):
var fn=function(){};
函数的返回值(return)
return是无条件退出当前方法/函数,并且返回数据(如果没有返回underfined)不仅可以返回值,还可以终止程序的执行.
系统函数
注:NaN(表示非数字)
parseInt(data) - 将字符串转化为整数(类型为:number)
document.write(parseInt('11')); // 11
Number(data) - 将字符串转化为数字(类型为:number)
document.write(Number(11)); // 11
document.write(Number(11.2)); // 11.2
document.write(Number('11')); // 11
document.write(Number('11sdsf')); // NaN
脚下留心:data只能是数字,否则会返回NaN(非数字)
isNaN(data) - 判断data是否非数字(了解)
如果直接给定字符串,内部的转化机制,参考Number();
document.write(isNaN(11)); // false
document.write(isNaN(11.2)); // false
document.write(isNaN('11.2')); // false
document.write(isNaN('11sdsf')); // true
document.write(isNaN('sdsf11')); // true
document.write(isNaN('11.2sdsf')); // true
document.write(isNaN('sdsf11.2')); // true
脚下留心:
1、true - 非数字,false - 是数字
2、data只能是数字,否则返回(true)表示非数字
parseFloat(data) - 将字符串转化为浮点数(类型为:number)
document.write(parseFloat('11')); // 11
document.write(parseFloat('11sdsf')); // 11
document.write(parseFloat('sdsf11')); // NaN
document.write(parseFloat('11.2sdsf')); // 11.2
document.write(parseFloat('sdsf11.2')); // NaN
脚下留心:
1、首字母必须是数字,否则返回(NaN)表示非数字
Math.random() 产生随机数
产生0-1之间的随机数,但是不包含0和1
// 随机数的产生,验证码的效果
var num1 = parseInt(Math.random()*10);
var num2 = parseInt(Math.random()*10);
var num3 = parseInt(Math.random()*10);
var num4 = parseInt(Math.random()*10);
document.write(num1 +' '+num2+' '+num3+' '+num4);
Math.ceil() 即向上取整
var num1 = 3.45567;
var num2 = Math.ceil(num1);
document.write(num2);
Math.floor 即向下取整
var num3 = Math.floor(num1);
document.write(num3); // 3
toFixed()保留两位小数
var num =2.446242342;
num = num.toFixed(2);
console.log(num);
作用域
全局变量
在函数/方法外部声明的变量
没有加var关键字声明的变量(隐式全局变量)
局部变量
函数/方法内部,使用var声明的变量
事件函数
事件:以"on"开头的都是事件,每个事件后都有事件处理函数
常见鼠标的事件
名称 | 作用 |
---|---|
onclick | 鼠标单击 |
ondblclick | 鼠标双击(连续点击两下) |
onmouseover | 鼠标移入,即鼠标停留在图片(元素)等的上方(一次) |
onmouseout | 鼠标移出,即离开(元素)图片等躲在的区域(一次) |
onmousemove | 鼠标移动,即鼠标在(元素)图片的上方不断移动(多次) |
onmouseup | 事件会在鼠标按键被松开是发生 |
onmousedown | 事件会在鼠标按键被按下时发生 |
表单事件
名称 | 作用 |
---|---|
onblur | 指定元素会失去焦点(光标没了) |
onfocus | 指定元素获取焦点(点击出现光标) |
onreset | 重置表单的时候触发事件,执行对应的js功能 |
onsubmit | 提交表单的时候触发事件,执行对应的js功能 |
onchange | 表单内容发生改变,且鼠标离开时触发 |
oninput | intput框输入时触发 |