javascript学习三
每一个函数的对象都有一个length,表示该函数期望接收到的参数格式,他与函数的arguments不同,arguments.length表示函数实际接收到的参数格式。
<script type="text/javascript"> function add(num1,num2,num3){ } alert(add.length); </script>
javascript中的五种原始数据类型:Undefined,Null,Number,String,Boolean。
Undefined数据类型的值只有一个:undefined。
Null数据类型的值是有一个:null。
Boolen数据类型的有两个:true和false。
javascript中没有char类型的数据。
<script type="text/javascript"> var s="aaaa";//s为原始的String类型。 alert(typeof s); </script>
s=new String("dd");//为Object类型 alert(typeof s);
typeof是一元运算符,后跟变量的名称,用于获取变量的数据类型,器返回值有5个:undefined,Boolean,number,string,object。
在javascript中,如果函数没有申明返回值,那么会返回一个undefined。
null和undefined的关系:undefined实际上是从null派生出来的。
强制类型转换:在javascript中有三种强制类型转换:Boolean(value),Number(value),String(value)
<script type="text/javascript"> var s="123" alert(Boolean(s)); </script>
在javascript中,对于函数中定义的变量来说,加var表示局部变量,不加var表示全局变量。
在javascript中,所有的对象都是从object中继承过来的。Object中的属性是不可枚举的,因此不能通过for……in……获得其属性。
在javascript中,可以动态的添加对象的属性,也可以动态的删除对象的属性。
<script type="text/javascript"> var obj=new Object(); alert(obj.username); obj.username="jiang";//添加属性 alert(obj.username); delete obj.username;//删除属性 alert(obj.username); </script>
定义对象的另一种方式:
<script type="text/javascript"> //在javascript中,这是定义对象的最常用的一种方式 var obj={username: "jiang",password: 123}; alert(obj.username); alert(obj.password); </script>
对于javascript数组中的sort()方法来说,他会先将待排序的内容转换成字符串(调用toString()方法),按照字符串的先后顺序进行排序。
<script type="text/javascript"> var arr=[1,3,25]; arr.sort(); alert(arr); </script>
这样就可以实现排序了:
<script type="text/javascript"> function compare(num1,num2){ var number1=parseInt(num1); var number2=parseInt(num2); if(number1<number2){ return -1; } else{ if(number1==number2){ return 0; } else{ return 1; } } } var arr=[1,3,25]; arr.sort(compare);//函数名是对象的引用 alert(arr); </script>
<script type="text/javascript"> /* function compare(num1,num2){ var number1=parseInt(num1); var number2=parseInt(num2); if(number1<number2){ return -1; } else{ if(number1==number2){ return 0; } else{ return 1; } } } */ var arr=[1,3,25]; //arr.sort(compare); //使用匿名函数 arr.sort(function(num1,num2){ var number1=parseInt(num1); var number2=parseInt(num2); if(number1<number2){ return -1; } else{ if(number1==number2){ return 0; } else{ return 1; } } }); alert(arr); </script>