一、变量的定义
- 命名规则:字母、数字、_、&组成,不能以数字开头。
- 变量类型:
var
,动态类型(弱类型) - 定义方式:
<script type="text/javascript">
var t1;
var t2 = default;
var t3 = null;
var t4 = NaN;
</script>
t1和t2是一个意思,都是默认的;t3是空值;NaN是数字类型,但是:not a number(不是任何的一种已有的数字类型)。
- 字符串定义:
<script type="text/javascript">
var s1 = 'aaa';
var s2 = "aaa";
var s3 =new String("aaa");
</script>
前两种是简化的定义形式,最受一种是标准的赋值语句。
- 字符串中引号的定义:单引号里双引号为普通符号、双引号里单引号为普通符号、转义字符
<script type="text/javascript">
var s1 = 'a"b';
var s2 = "a'b";
var s3 =new String("a\'b\"c");
</script>
- 数字类型:
<script type="text/javascript">
var n1 = 10;
var n2 = 1.2;
var n3 = new Number(12);
</script>
- Boolean类型:
<script type="text/javascript">
var b1 = true;
var b2 = false;
var b3 = new Boolean(false);
</script>
- 数组类型:
<script type="text/javascript">
var arr1 = [1,2,3];
var arr2 = ['1','2','3'];
var arr3 = new Array(1,2,3);
arr3[0] = 1;
arr3[1] = 2;
arr3[2] = 9;
</script>
JS里面的数组是可变的,因为JS中没有集合的概念,所以JS中的数组功能和java中集合的功能类似。
- 对象类型:
<script type="text/javascript">
//对象定义方法1
var person1 = {
name:"张三",
age:13,
sex:true
}
//对象定义方法2
var person2 = new Object({
name:"张三",
age:13,
sex:true
})
//对象定义方法3
var person3 = new Object();
person3.name = "李四";
person3.age = 36;
//对象变量的使用1(简化)
console.log(person3.age)//取值
person3.age = 12;//赋值
//对象变量的使用2 (标准)
console.log(person1['name'])//取值
person1['name'] = "张小三"
</script>
- 函数方法function
<script type="text/javascript">
//函数方法function
//方法1:
var f1 = function(){
}
//方法2:
function f2(){
}
console.log(typeof f2)
</script>
方法1和方法2等价;
console.log(typeof f2)
typeof为关键字,输出变量的类型。
- 时间类型:
<script type="text/javascript">
var now = new Date();
</script>
- 正则类型:
<script type="text/javascript">
//方法1
var r1 = /\d+/;
//方法2
var r2 = new RegExp("\\d+");
console.log(r1.test("123"))
</script>
二、变量的运算
【JS中的运算大部分和java中的相同】
JS特有的运算符:
(1)=== 判断类型和值是否完全相同
<script type="text/javascript">
var a1 = 10;
var a2 = "10";
console.log(a1===a2)
</script>