2 在JavaScript中,没有方法(函数)重载的概念。
3 在JavaScript中有一个Function对象,所有自定义的函数都是Function对象类型的。Function对象接收的所有参数都是字符串类型的,其中最后一个参数就是要执行的函数体,而前面的参数则是函数真正需要接收的参数。
<script type="text/javascript"> var add = new Function("number", "number1", "alert(number + number1);"); var add = new Function("number", "alert(number + 20);"); add(10, 30); </script>
4在JavaScript中,每个函数都有一个隐含的对象arguments,表示给函数实际传递的参数。
function add2() { if(1 == arguments.length) { alert(arguments[0]); } else if(2 == arguments.length) { alert(arguments[0] + arguments[1]); } else if(3 == arguments.length) { alert(arguments[0] + arguments[1] + arguments[2]); } } add2(3); add2(3, 4); add2(3, 4, 5);
5每一个函数对象都有一个length属性,表示该函数期望接收的参数格式。它与函数的arguments不同,arguments.length表示函数实际接收的参数格式。
var add = function(num, num2, num3) { alert(num + num2 + num3); } alert(add.length);
var s = false; alert(s); var s = "hello"; // s是原始类型 alert(typeof s); var s = new String("hello"); //s是对象类型 alert(typeof s);
8. Null数据类型的值只有一个:null。
9. Boolean数据类型的值有两个:true和false。
var s = false; alert(typeof s); var s = 3; alert(typeof s);
15.在JavaScript中,对于函数中定义的变量来说,加var表示局部变量,不加var表示全局变量。
16.在JavaScript,所有对象都是从Object对象继承过来的。Object中的属性是不可枚举的(propertyIsEnumerable返回false),因此无法
通过for…in语句得到其中的属性。
var object = new Object(); for(var v in object) { alert(v); } alert(object.propertyIsEnumerable("prototype"));
var object = new Object(); //alert(object.username); object["username"] = "shengsiyuan"; alert(object.username); delete object.username; // username属性已经从object对象中删除 alert(object.username);
// 在JavaScript中定义对象的最常见的方式 var object = {username: "zhangsan", password: 123}; alert(object.username); alert(object.password);
19 对于JavaScript数组的sort方法来说,它会先将待排序的内容转换为字符串(调用toString()方法),按照字符串的先后顺序进行排序。
var array = new Array(1, 25, 3, 36); array.sort(function(num1, num2) { var int1 = parseInt(num1); var int2 = parseInt(num2); if (int1 < int2) { return -1; } else if (int1 > int2) { return 1; } else { return 0; } }); alert(array);