JavaScript是一个弱类型的编程语言,定义的变量都用var关键字,不需要指定变量的类型,但数据本身是具有类型的。
一、数字类型
表示一个数组类型的对象,可以是new Number(value) 或 直接用一个值就代表了数字对象。
其中,NaN值是一个Number类型,代表不是数字的数字类型
<script>
//获得最大的数字
alert(Number.MAX_VALUE);
//将一个字符串解析为数字类型的值
//parseInt函数一定会返回一个数字类型的值
//返回12a的数字类型就是NaN值
var n = parseInt("aaa");
alert(n+1);//NaN
</script>
二、字符串类型
创建一个字符串对象,可以使用new String("abc") 或 “abc” 或 'abc'
var s1 = new String("abc");
var s2 = "abc";
var s3 = 'abc';
alert(s1+s2+s3); //abcabcabc
//==是比较字符串的内容
alert(s1==s2);//true
alert(s2==s3);//true
属性: length (在java中length是方法)
函数:
1. charAt 返回指定位置的字符
2. concat 连接字符串 ,也可以使用+连接
3. indexOf 返回指定字符串第一次出现的位置
4. lastIndexOf 返回指定字符串最后 一次出现的位置
5. replace 替换
6. split 拆分
7. substring : 获得指定范围的子串
8. substr : 从指定范围开始获得指定长度的子串
三、数组类型
javascript中的数组是动态数组
创建数组:
1. new Array() : 创建一个长度为0的数组
2. new Array(length) : 创建了一个指定长度的数组
3. new Array(value,value,value....) : 创建了一个指定存储的元素的数组
4. 简写: [] :创建一个长度为0的数组 ; [value,value,value.] : 创建了一个指定存储的元素的数组
<script>
var arr1 = new Array();
alert(arr1.length);//0
var arr2 = new Array(5);
alert(arr2.length);//5
for(var i = 0;i<arr2.length;i++){
alert(arr2[i]); //undefined
}
var arr3 = new Array("a","b","c");
</script>
<script>
//通常创建数组 ,都是用简写方式
var arr1 = [];
alert(arr1.length);
var arr3 = ["a","b","c"];
</script>
函数:
1. concat: 合并两个数组的元素,形成一个新的数组
2. join : 将数组中的元素 联合成一个字符串
3. pop:移除数组的最后一个元素,并返回那个元素
4. push:向数组的末尾添加元素,可以添加一个或多个元素
5. reverse: 反转
6. shift : 移除数组的第一个元素,并返回那个元素
7. splice : 三个参数,第一个参数是添加/删除的位置 ;第二个参数是删除元素的个数;第三个参数是 添加的元素(多个)
<script>
var arr = ["a","b","c","d"];
//arr.splice(1,2); //删除了"b"和"c"元素
arr.splice(2,0,"x","y"); //在"c"位置插入"x"和"y"
alert(arr.join());
</script>
8. sort :排序
四、日期类型Date
<script>
var date = new Date();
alert((1900+date.getYear())+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日");
var date2 = new Date(2022,11,31);
alert((1900+date2.getYear())+"年"+(date2.getMonth()+1)+"月"+date2.getDate()+"日");
</script>
五、Object类型
在Javascript中创建实体对象,例如学生对象,员工对象,图书对象等,可以使用Object类型的对象。
创建对象,可以使用new Object() 也可以 {}代替 ,其中{}中属性和值用:分隔,属性和属性使用逗号分隔的,其 中的值可以是任意数据类型的值
<script>
//需求:创建一个员工对象,姓名是tom,年龄是20,电话号是13312345678
var emp = new Object();
emp.name = "tom";
emp.age = 20;
emp.tel = "13312345678";
alert(emp.name+","+emp.age);
//简写:
var emp = {name:"tom",age:20,tel:"13312345678"};
</script>
在Javascript表示对象的简写,格式非常的轻量,因此将这个格式称为json格式,被用于传输数据使用的一种格式
<script>
/*复杂需求:创建一个员工对象,姓名是tom,年龄是20,入职时间2021-03-01,有两个电话分别
是"13311111111"和"13322222222",有两个组员,分别是jim,21岁,jack,22岁 ,tom的部门是财务部,位置是502,财务主管是rose,年龄30 */
var emp = {
name:"tom",
age:20,
hireDate:new Date(121,3,1),
tels:["13311111111","13322222222"],
teams:[
{
name:"jim",
age:20
},
{
name:"jack",
age:22
}
]
dept:{
name:"财务部",
loc:"502",
manager:{
name:"rose",
age:30
}
}
};
//获得这个员工的姓名
alert(emp.name);
//获得这个员工 部门主管的姓名
alert(emp.dept.manager.name);
//获得这个员工的所有联系方式
for(var i = 0;i<emp.tels.length;i++){
alert(emp.tels[i]);
}
</script>
六、函数
定义一个函数:
function 函数名 (参数,参数) {
}
参数不写类型,不写var,直接写参数名
<script>
function show(){
alert("hello world");
}
function add(n1,n2){
return n1+n2;
}
</script>
<script>
show();
alert(add(2,3));
</script>
undefined
未定义的一个值
null
空值