1.我学了什么
1.JavaScript功能
a.数据处理
b.用户交互
c.服务器端开发
2.JavaScript组成
3.JavaScript语法
1.1变量
变量是可变的量,从编程角度讲,JavaScript变量是存储数据值得容器.
1.2 声明变量 var x 使用var声明x
赋值 = 使用等于号赋值
var x=10 使用var 声明x赋值为10
4数据类型的分类
4.1原始类型:number,string,boolean,undefined,null
-1.number
var a =10,b =20.1;
-2.string 用单引号或双引号包裹的叫string类型
var c = "hello world"
var c = "good"
-3.boolean
只有两个值true(1)或false(0)
-4.undefined
var a;一个变量之声明未赋值就是undefined
使用typeof操作符来识别基本类型
4.2引用数据类型:array,object,function
-1.array
a1.声明变量 var arr =[1,2,3,4]
a2.获取数组的长度 arr.length
a3.读取数组的值(数组的下标从0开始) arr[index]
a4.向数组的末尾添加值 arr [arr.length]=5;
-2.object
b1.声明对象
var exuejun ={
name:"exuejun",
age:25
}
b2.读取变量的属性
console.log(exuejun name);
-3.function 定义:封装特点功能的代码块
c1.声明函数
function a(){
console.log("hello wrolf")
}
c2.调用函数
a();
4.3.声明提前
在正式执行脚本之前,将所有var声明的变量,提前预读到(当前作用域的)顶部,集中声明创建.然后再开始执行程序.
***赋值留在本地.
eg:
console.log(a);
var a =10;
6.全局变量和局部变量
全局变量:在函数外声明的变量
局部变量:在函数内声明的变量
5.数据类型的转换
5.1 强制转换
任意-->数字:Number();
Number(true)//1;
Number(false)//0;
//只能识别数值的字符串
var a ="20";
var b ="hello world";
console.log(Nunber(a)):20;
console.log(Number(b))://NaN
5.2自动转换 (不需要程序员干预,js自动完成的类型转换)
算数计算中的自动转换:
A.算数计算中,数据都默认转为数字,再计算,不能转为数字则为NaN
Boolean类型:true-->1 false-->0
eg:
var a =1;
var b =true;
var c ="hello world";
console.log(a+b): //2
console.log(a-c): //NaN
B.特殊/+运算中,碰到字符串,+就变为字符串拼接
另一个不是字符串的数据,被自动转为字符串
比较运算(>,<,>=,<=,==,!=)中的自动转换:
默认将所有类型转为数字再比较
将两个值做比较-->返回值:true、false
5.3强制转换
任意-->数字:3个API
a.非字符串类型转数字
Number(x)
eg:
var a ="20";
console.log(Number(a)) //只能识别这样的字符串
b. 将字符串转为数字:2个API
parseInt(str):
从第一个字符开始依次读取每个数字,只要碰上第一个非数字字符 就停止,自动跳过开头的空字符
***不识别小数点
何时使用:将字符串转为整数时
var width="20px";
console.log(Number(width)) //NaN
console.log(parseInt(width)) //20
parseFloat(str):用法同parseInt
比较Number()和parseInt()
var b=true;
console.log(Number(b)) //1
console.log(parseInt(String(b))) //NaN
任意-->字符串:2个API
x.toString(); x不是undefined或null时,才可用
String(x)
任意类型-->Boolean: Boolean(x)
只有5个值转为false:
"" NaN undefined null 0
其余都转为true
6运算符和表达式
6.1算术运算
+,-,*,/,%,++,--
6.2比较运算:将两个值做比较-->返回值:true、false
>,<,>=,<=,==,!=
***关系运算中:
a. 默认将所有类型转为数字再比较
特殊情况
A.NaN:NaN不等于,不大于,不小于任何值(包括自己)
NaN和任何数据做!=比较时,始终返回true
isNaN(n):本意是判断一个值是否是NaN
6.3逻辑运算:将多个关系运算综合起来,得出最终结论,返回值:true、false
&& || !
6.4赋值运算:+= -= *= /= %=
6.5三目运算
var a=(10>4)?10:4;
2我掌握了什么
3我没掌握的
1.JavaScript功能
a.数据处理
b.用户交互
c.服务器端开发
2.JavaScript组成
3.JavaScript语法
1.1变量
变量是可变的量,从编程角度讲,JavaScript变量是存储数据值得容器.
1.2 声明变量 var x 使用var声明x
赋值 = 使用等于号赋值
var x=10 使用var 声明x赋值为10
4数据类型的分类
4.1原始类型:number,string,boolean,undefined,null
-1.number
var a =10,b =20.1;
-2.string 用单引号或双引号包裹的叫string类型
var c = "hello world"
var c = "good"
-3.boolean
只有两个值true(1)或false(0)
-4.undefined
var a;一个变量之声明未赋值就是undefined
使用typeof操作符来识别基本类型
4.2引用数据类型:array,object,function
-1.array
a1.声明变量 var arr =[1,2,3,4]
a2.获取数组的长度 arr.length
a3.读取数组的值(数组的下标从0开始) arr[index]
a4.向数组的末尾添加值 arr [arr.length]=5;
-2.object
b1.声明对象
var exuejun ={
name:"exuejun",
age:25
}
b2.读取变量的属性
console.log(exuejun name);
-3.function 定义:封装特点功能的代码块
c1.声明函数
function a(){
console.log("hello wrolf")
}
c2.调用函数
a();
4.3.声明提前
在正式执行脚本之前,将所有var声明的变量,提前预读到(当前作用域的)顶部,集中声明创建.然后再开始执行程序.
***赋值留在本地.
eg:
console.log(a);
var a =10;
6.全局变量和局部变量
全局变量:在函数外声明的变量
局部变量:在函数内声明的变量
5.数据类型的转换
5.1 强制转换
任意-->数字:Number();
Number(true)//1;
Number(false)//0;
//只能识别数值的字符串
var a ="20";
var b ="hello world";
console.log(Nunber(a)):20;
console.log(Number(b))://NaN
5.2自动转换 (不需要程序员干预,js自动完成的类型转换)
算数计算中的自动转换:
A.算数计算中,数据都默认转为数字,再计算,不能转为数字则为NaN
Boolean类型:true-->1 false-->0
eg:
var a =1;
var b =true;
var c ="hello world";
console.log(a+b): //2
console.log(a-c): //NaN
B.特殊/+运算中,碰到字符串,+就变为字符串拼接
另一个不是字符串的数据,被自动转为字符串