(三).javaScript
一. 基本语法
1.变量
ECMAScript的变量是松散类型,可以用来保存任何类型(如: String、Number、Boolean以及Object等)的数据。
定义变量时要使用 var 操作符,后跟变量名(即一个标识符),如下所示: var message; 这行代码定义了一个名为 message 的变量,该变量可以用来保存任何值。
2.操作符
一元操作符 ++ –
布尔操作符 && || !
算术操作符 + - * / %
关系操作符 <> <=> != !==
条件(问号)操作符 ? :
赋值操作符 = += -+ *= /= %=
3.语句
if do-while while for for-in for-of break continue switch
4.对象
4.1 概述
Object类型,称为一个对象,是JavaScript中的引用数据类型。它是一种复合值,它将很多值聚合到一起,可以通过名字访问这些值。对象也可以看做是属性的无序集合,每个属性都是一个名/值对。对象除了可以创建自有属性,还可以通过从一个名为原型的对象那里继承属性。除了字符串、数字、true、false、null和undefined之外,JavaScript中的值都是对象。
4.2 创建对象
var person = new Object();
person.name = “孙悟空”;
person.age = 18;
console.log(person);
标题
或
var person = {
name: "孙悟空",
age: 18
};
console.log(person);
4.3 访问属性
对象.属性名 或 对象[‘属性名’]
4.4 删除属性
delete 对象.属性名
4.5 工厂模式创建对象
function createPerson(name, age, job){
var o = new Object();
o.name = name;
o.age = age;
o.job = job;
o.sayName = function(){
console.log(this.name);
};
return o;
}
var person1 = createPerson(‘Steve Jobs’,56 , ‘Inventor’);
5.数组
5.1 概述
数组也是对象的一种,数组是一种用于表达有顺序关系的值的集合的语言结构,也就是同类数据元素的有序集合。
数组的存储性能比普通对象要好,在开发中我们经常使用数组来存储一些数据。但是在JavaScript中是支持数组可以是不同的元素,这跟JavaScript的弱类型有关,此处不用纠结,我们大多数时候都是相同类型元素的集合。数组内的各个值被称作元素,每一个元素都可以通过索引(下标)来快速读取,索引是从零开始的整数。
使用typeof检查一个数组对象时,会返回object。
5.2 创建数组
方式一: new
var colors = new Array('red', 'blue', 'green');
方式二: 字面量
var colors = ['red', 'blue', 'green']; // 创建一个包含 3 个字符串的数组
5.3 遍历数组
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
5.4 数组方法
push()方法: 该方法可以向数组的末尾添加一个或多个元素,并返回数组的新的长度
pop()方法:该方法可以删除数组的最后一个元素,并将被删除的元素作为返回值返回
unshift()方法:该方法向数组开头添加一个或多个元素,并返回新的数组长度
shift()方法:该方法可以删除数组的第一个元素,并将被删除的元素作为返回值返回
forEach()方法:该方法可以用来遍历数组
slice()方法:该方法可以用来从数组提取指定元素,该方法不会改变元素数组,而是将截取到的元素封装到一个新数组中返回
splice()方法:该方法可以用于删除数组中的指定元素,该方法会影响到原数组,会将指定元素从原数组中删除,并将被删除的元素作为返回值返回
参数:
第一个参数:表示开始位置的索引
第二个参数:表示要删除的元素数量
第三个参数及以后参数:可以传递一些新的元素,这些元素将会自动插入到开始位置索引前边
concat()方法:该方法可以连接两个或多个数组,并将新的数组返回,该方法不会对原数组产生影响
join()方法:该方法可以将数组转换为一个字符串,该方法不会对原数组产生影响,而是将转换后的字符串作为结果返回,在join()中可以指定一个字符串作为参数,这个字符串将会成为数组中元素的连接符,如果不指定连接符,则默认使用,作为连接符
reverse()方法:该方法用来反转数组(前边的去后边,后边的去前边),该方法会直接修改原数组
sort()方法:该方法可以用来对数组中的元素进行排序,也会影响原数组,默认会按照Unicode编码进行排序
6.函数
6.1 概述
函数是由一连串的子程序(语句的集合)所组成的,可以被外部程序调用,向函数传递参数之后,函数可以返回一定的值。
通常情况下,JavaScript代码是自上而下执行的,不过函数体内部的代码则不是这样。如果只是对函数进行了声明,其中的代码并不会执行,只有在调用函数时才会执行函数体内部的代码。
这里要注意的是JavaScript中的函数也是一个对象,使用typeof检查一个函数对象时,会返回function。
6.2 创建函数
使用 函数对象 来创建一个函数
var 函数名 = new Function(“执行语句”);
使用 函数声明 来创建一个函数
function 函数名([形参1,形参2,…,形参N]) {
语句…
}
使用 函数表达式 来创建一个函数
var 函数名 = function([形参1,形参2,…,形参N]) {
语句…
}
6.3 函数返回值
使用 return 来设置函数的返回值,return后的值将会作为函数的执行结果返回,可以定义一个变量,来接收该结果。
**注意:**在函数中return后的语句都不会执行,如果return语句后不跟任何值就相当于返回一个undefined,如果函数中不写return,则也会返回undefined,return后可以跟任意类型的值
6.3 嵌套函数
在函数中声明的函数就是嵌套函数,嵌套函数只能在当前函数中可以访问,在当前函数外无法访问。
6.4 匿名函数
没有名字的函数就是匿名函数,它可以让一个变量来接收,也就是用 “函数表达式” 方式创建和接收。
var fun = function () {
alert("我是一个匿名函数");
}
fun();
6.5 立即执行函数
函数定义完,立即被调用,这种函数叫做立即执行函数,立即执行函数往往只会执行一次。
(function () {
alert("我是一个匿名函数");
})();