<script> var a = 1; var b = 'hello'; var c = true; var d; var e = alert; var f = null; /*基本数据类型*/ console.log(typeof a); console.log(typeof b); console.log(typeof c); console.log(typeof d); console.log(typeof e); console.log(typeof f); </script>
<script> //可以没有形式参数 functionadd(){ console.log(arguments.length); var sum = 0; for(var i=0;i<arguments.length;i++){ sum += arguments[i]; } return sum; } var a = 2; var b = 3; console.log(add(a,b)); </script>
所以上面这个程序是可以正常执行的。
四、作用域问题
如果是一个局部变量,那么在外面正常情况下是无法访问到的,比如:
1 2 3 4 5 6 7 8 9
<script> //作用域 functionf() { if(true){ var a = 3; } } console.log(a);//error </script>
<script> //第一种 new Object var person = newObject(); person.name = "fossi"; person.age = 20; console.log(person); </script>
这跟java中定义形式几乎一样,访问它的属性也一样,就是person.name即可。
还有一种比较常用的定义对象的方式:
1 2 3 4 5 6 7 8 9 10 11
<script> //第二种 new Object var person = {"name":"fossi", "age":20, "fun":function () { alert("i am a person"); }}; console.log(person); person.fun(); console.log(person["age"]); </script>
注意,一个函数也可以作为它的成员变量,类似于java中的成员方法。
七、数组打印
数组非常重要,掌握数组常用的技巧将事半功倍。
1 2 3 4 5 6 7 8 9 10
<script> //opeartion of array var colors = ["red","yellow","blue"]; colors[8] = "pink"; console.log(colors); console.log(colors.toString()); console.log(colors.valueOf()); console.log(colors.toLocaleString()); console.log(colors.join("|")); </script>
<script> var num = [1,4,2,6,8,3,1]; //全部都要满足条件,有一个不满足就返回false var flag = num.every(function (item,index,array) { //每一个item都必须小于4才返回true,否则返回false return num < 4; }); console.log(flag); //只要有一个满足条件即可,也是返回true或者false var num = [1,4,2,6,8,3,1]; var res = num.some(function (item) { //只要有一个满足条件即可 return item < 4; }); console.log(res); //过滤出符合条件的值 var num = [1,4,2,6,8,3,1]; var res = num.filter(function (item) { return item > 4; }); console.log(res); //对每一个元素进行同样的操作 var num = [1,4,2,6,8,3,1]; var res = num.map(function (item) { return item*2; }); console.log(res); //对元素进行统计 var num = [1,4,2,6,8,3,1]; var sum = num.reduce(function (pre,curr,index,array) { return pre+curr; }); console.log(sum); </script>