number 所有数字,比如小数/整数
object 所有类型 比如{}.[]
string 字符串类型,用双引号""或者单引号'',建议JS都用单引号
原因示例:<body onclick ="alert('hello')"></body>如果hello用双引号,肯定会冲突的。
function 函数类型
定义函数
function 函数名(形参){
//函数体
}
函数定义注意,如果两个或者两个以上的函数函数名一样,后面的会直接覆盖前面的,
没有重载的意义,就是直接的覆盖。最后使得只有最后一个函数有用或者会被调用。
function sum(num1,num2,num3,num4){
return num1 = num2 + num3 + num4;
}
//会返回NaN = Not a Number
console.log(sum(10,20));
函数实例:
最简单的对象
var dog = {};
然后添加属性:
var dog = {
age : 20;
name: 'rose';
};
console.log(dog.name);
然后要访问这个dog的属性的两种方法:
console.log(dog.age);//点访问属性
console.log(dog['age']);//字典访问属性
这里提一个易错点:dog[age]这样会得到age的变量值,然后再访问字典字,所以会出bug的。
下面讲讲对象的方法:
function temp(){
console.log('跑起来');
}
var dog = {
age : 20;
run : temp;
};
当然把函数写成匿名函数,把函数直接封装在对象里面
var dog = {
age : 20;
run : function(){
console.log(this.age + '岁的狗跑起来')
}
}//如果this.age没有this的话,就会报错,JS明确必须要用this
dog.age = 40;
dog.run();
//函数也可以重新赋值或者叫覆盖
dog.run = function(){
console.log(this.age + '岁汪汪叫');
}
数组、字典都是对象类型
数组实例:
var array = [12,'dog',24,'jack',{ name : 'wangcai' },[],function(){ console.log(10); }]; array[array.length-1]();