(一)简介
1、是什么
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
2、组成部分
核心(ECMAScript)
jQuery(DOM、BOM)
文档对象模型(Document Object Model,简称DOM)
浏览器对象模型(Browser Object Model,简称BOM)
(二)包含内容
1、数据类型
基本类型:数字类型number、布尔类型boolean、字符串类型string
引用类型:对象类型、函数类型
空类型:null和undefined
运算符:typeof
语法:string typeof (变量);
2、 运算符
①数学运算符:+、-、*、/
②逻辑运算符:>、<、>=、<=、==、!= &&、|| ===和 !==完全等于
(===严格等于:在类型等于的时候才比较值)
③与对象相关
new
delete
instanceof(判断某个对象是否是某个构造方法创建出来的)
(三)应用
1、【JavaScript是一个弱类型的语言】
【弱类型】不代表没有类型,不严格的检查类型
C#和 js对比:
①C#
int num = 10; // 需要检查类型赋值如果不符合要求就报错,编译不通过
int num = "123"; // 报错
② js
使用var声明变量
var num = 123; // 不会检查类型,任何赋值都可以成功
3、使用函数(函数、方法)
-> 函数的语法
① 声明式语法:
function 函数名(参数列表) {
// 函数体
// 如果有返回值直接return即可
}
② Lambda函数(匿名函数)
var func = function(参数) {
方法体
};
4、js不支持重载
-> Function对象(动态函数)
语法
var func = new Function(...);// Function参数中最后一个参数是方法体,前面的参数都是该方法的参数
// 参数类型都是字符串
var getMax = function(n1, n2) {
return n1 > n2 ? n1 : n2;
};
var func = new Function("n1", "n2", "return n1 > n2 ? n1 : n2;");// 将字符串变成函数
5、 逻辑控制与流程控制
① if
if(bool表达式) {
语句
} else if(bool表达式) {
语句
} else {
语句
}
解释性的语言,规范结尾用分号,但是如果不用分号,也不会错,js引擎会根据换行【自动】加分号
②switch-case
switch(val) {
case 值1: 语句; break;
case 值2: 语句; break;
case 值3: 语句; break;
... ...
case 值N: 语句; break;
default: 语句; break;
}
③while
while(逻辑表达式) {
循环体
}
④ do-while
do {
} while(条件);
⑤ for
for (var i = 0; i < max; i++ ) {
循环体
}
⑥for-in结构(有点像foreach,但是不同)
for(var item in 集合或对象) {
遍历这个集合对象,item为每一个项的键
循环体
}