javaScript是一种区分大小写的语言;
javaScript的常量是那些只能出现在赋值表达式右边的符号;
1 var a = -3 || 1; 2 alert(a); //输出-3 3 4 var a = 3 || 1; 5 alert(a); //输出3 6 7 var a = 0|| 1; 8 alert(a); //输出1 9 10 var a = 1 || 1; 11 alert(a); //输出1 12 13 function step(a){ 14 return function(x){ 15 return x+a; 16 } 17 } 18 alert(step(10)(20)); //输出30
//Arguments对象,arguments属性 function f(x,y,z){ if(f.length != arguments.length){ alert('实参数与形参数不等!'); }else{ alert('实参数与形参数相等!'); } } f(1,2,3); f(1,2);
window.onload = function(){
var bnt = document.getElementById('bnt');
bnt.onclick = button1; //让事件处理函数执行一个函数时,通过赋值方式,直接将函数名赋给事件处理函数就可以了
//如果加了(),则函数将会立即执行,后面也不会有效果了
function button1(){
alert('button');
};
};
window.onload = function(){ var bnt = document.getElementById('bnt'); bnt.onclick = button1; function button1(){ alert(arguments.length); //弹出1;事件处理函数绑定的函数,浏览器会自动传递一个event参数 alert(arguments[0]); }; }; window.onload = function(){ var bnt = document.getElementById('bnt'); bnt.onclick = button1; function button1(event){ alert(arguments.length); //弹出1; alert(arguments[0]); //弹出[object MouseEvent] alert(event); //弹出[object MouseEvent] }; };
window.onload = function(){ var bnt = document.getElementById('bnt'); bnt.onmouseup = function(event){ var e = event || window.event; alert(e.button); //属性button:右击时为2;滚轮为1;左击为0. } };
window.onload = function(){ var bnt = document.getElementById('bnt'); bnt.onmouseup = function(event){ alert(window.event); //firefox不识别,为undefined } };
document.onclick = function Foo(event){ var e = event||window.event; alert(event); alert(arguments.length); alert("当前鼠标坐标为:"+event.clientX+","+event.clientY); };
1 var data; 2 alert(typeof data); //data是Undefined类型,值是undefined,类型返回的字符串是undefined 3 4 var data = true; 5 alert(typeof data); //data是Boolean类型,值是true,类型返回的字符串是boolean 6 7 var obj = null; //这是一个空对象,没有创建对象,只是声明了一个对象的引用 8 alert(typeof obj); //obj是Null类型,值是null,返回object
alert(undefined == null); //true
alert(undefined === null); //false
1 function box(num) { //按值传递,在javaScript中没有按引用传递参数 2 num += 10; 3 return num; 4 } 5 6 var num = 50; 7 alert(box(num)); //60 //如果有按引用传递的话,alert(num);将输出60 8 alert(num); //50 9 10 11 12 //JS没有按引用传参的功能,传递引用参数和按引用传参是不一样的 13 function fnt(obj) { 14 obj.name = 'Mike'; 15 } 16 17 var obj = new Object(); 18 fnt(obj); //这里将要传递一个引用类型的参数,但不是按引用传递,是按值传递的 19 alert(obj.name); //Mike
1 //typeof 一般用于检测基本数据类型,不适合用于检测引用类型 2 //instanceof 用于检测引用类型,检测基本类型时会返回false 3 var b = 11; 4 alert(typeof b); //number 5 alert(b instanceof Number); //false 6 7 var a = [2,1]; 8 alert(a instanceof Array); //true