0x01 JavaScript初识
JavaScript是一种解释性脚本语言,运行在浏览器中,由浏览器的渲染引擎解析。在html中,JavaScript语句需要放在script标签中。
0x02 JavaScript语句与变量
语句:在JavaScript中,语句以‘ ; ’结尾(虽然可以不写‘ ; ’,但不建议这样做)
变量:var是JavaScript变量定义的标识符。变量的数据类型:
1. 基本类型:number,string,boolean,null,undefined
2. 引用类型(Object):数组array,对象obj
JavaScript不允许直接访问内存中的位置,也就是说不能直接操作对象的内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象。所以引用类型的值是按引用访问的。(即变量中存的是相应的数据地址,相当于指针)
var name = '缘'; var age = 18;
如果要查看变量的数据类型,可以使用typeof()函数:
typeof(name) //name为变量名
如果要输出变量,有两种方式:
1. alert() 弹窗(风格由浏览器决定),会阻塞线程
2. console.log() 输出到控制台
alert只是将数据打印出来,console会将数据相关的具体信息也打印出来(调试时通常用console)
var arr = [1, 2, 3, 4, 5]; alert(arr); console.log(arr);
alert()效果图:
console.log()效果图:
0x03 表达式
在JavaScript中,表达式有一个明确的返回值,且不需要以‘;’结尾。
表达式中的变量不需要携带var标识符。
表达式中的变量需要先定义再使用。
var age = 18; //定义变量 if (age > 16) { //表达式age > 16,返回值为boolean型 alert('你已成年'); } else { alert('你未成年'); }
0x04 函数
在JavaScript中,函数定义使用的关键字为function
function sum() { var num1 = 1; var num2 = 2; var sum = num1 + num2; return sum; }
调用方法,我们可以用一个变量将函数的返回值保存下来(实际上,该变量存储的是该函数的内存地址,也就是指针。当执行到这条语句后,计算机会找到相应的内存地址并执行该函数,并将结果的内存地址返回给变量,变量再去该地址取结果)
var res = sum();
当然,JavaScript的函数也可以传参
//传参 function sum2(num1, num2) { var sum = num1 + num2; return sum; } //调用 var res2 = sum2(1, 3);
下面讨论下匿名函数的使用:
匿名函数,最直观的特点:没有函数名(或者说我们不关心他的函数名)
//这里相当于用一个变量存了函数的指针 var resFun = function(num1, num2) { var sub = num1 - num2; return sub; } //调用时,用变量名调用 alert(resFun(3, 1));
还有一种常用用法是:作为回调函数使用
//匿名函数作为回调函数 function sum3(num1, num2) { var sum = num1 + num2(); return sum; } var res3 = sum3(100, function() { return 1; }); alert(res3);
0x05 总结
1. JavaScript变量使用var标识,在使用变量时,直接用变量名调用,不需要携带标识var
2. JavaScript表达式一定会有一个明确的返回值
3. JavaScript语句以‘ ; ’结尾(为了规范,不要省略,即使可以省略)
4. JavaScript函数使用function关键字进行定义
5. JavaScript有两种输出方式:1.alert 弹窗函数;2.console.log 输出到控制台