01函数的基础使用
// 基础函数
function sayHello() {
console.log('Hello!');
}
sayHello()
// 函数传参
function outer (hello){
console.log(hello)
}
outer('hello');
//函数返回值
function sun (numer1,numer2){
return numer1+ numer2
}
sun(10,15)
02面向对象编程
JavaScript里的对象就是普通名值对的集合
方式1:
var obj = new Object();
方式2:
var obj = {};
可以补充创建一个完整的对象
var obj = {
name:{
surname:'Zhang',
names : 'XiaoLun',
},
age: 15;
}
对象是类的实例。一个类定义对象的特征,我们可以创造多个类来表示数据结构
// 定义一个对象,并未对象添加对应的类
function Book (title,conter,about){
this.title = title,
this.conter = conter,
this.about = about,
}
// 实例化这个对象
var Book = new Book('title','png','isnotop')
// 对对象进行操作 、
console.log(Book.title); // title
Book.title = 'newTitle';
console.log(BooK.title); // newTitle
3数组
创建一个数组
数组长度 lenght
var arry = [];
var arry = ['数据1','数据2','数据3','数据4','数据5']
console.log(arry.lenght)
数组的添加
var arr = [1,2,3,4]
// 在末尾添加一个新的元素,
arr[arr.lenght] = 5
// 或者 push
arr.push(6,7)
// 在首位添加一个新元素
arr.unshift(-1)
数组的删除
arr.pop();
//删除数组中的第一值
arr.shift();
// 根据下标进行删除
arr.splice(5,3)
//索引为5后的三个元素删除
arr.splice(5,0 ,2,3,4)
从索引5插入元素,2,3,4。0代表插入,splice(数组的角标,删除长度,.... 添加的元素 )
4二维数组
很可惜的的是,JS并不支持矩形,但我们可以用嵌套的循环来表示
function TowDArry(arry){
for(var i = 0; i < arry.lenght ;i++)
for (var j = 0;j < arry[i].lenght; j++)
console.log(arry[i][j])
}
5其他的数组方法
- concat
- every
- slice
- map
- indexof
- lastndexof
- join
- toString
6数组合并
var arryData1 = [1,2,3,4]
var arryData2 = [5,6,7,8]
var data = arryData1.concat(arryData2)
7数组的迭代
var number = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
var isEver = function (x){
// 如果值为2的倍数就返回true
console.log(x)
//否则就返回false
return (x % 2 == 0)
}
//every方法会迭代数组中的每个元素,直到返回false
// number.every(isEver)
// some 方法会将数组中的每一个元素都进行一次迭代。直到函数返回true:
// number.some(isEver);
如果是要进行将所有项进行输出,我们需要循环,或者forEach
numbers.forEach(function(x){
console.log((x % 2 == 0));
});
//方法一
var myMap = numbers.map(isEven);
// 方法二
var evenNumbers = numbers.filter(isEven);
map方法会将数组中的没有一个元素都给定一个新的元素数组,
filter对数组中的每一项运行给定函数,返回该函数会返回true的项组成的数组