JavaScript笔记_ECMAScript_下

js数组

创建数组

JS 中创建数组有两种方式:

   创建一个新的空数组: var arr_name = new Array();

   初始化新的空数组:var arr_name = [];

   初始化非空数组:var arr_name=[‘aa’,’bb’,’cc’];

数组中可以存放任意类型的数据

获取数组中的元素

索引(下标):用来访问数组元素的序号(数组下标从0开始)

       访问数组中没有索引值的元素,得到的值为underfined

数组的添加和修改

在末尾新增数据

数组[数组.length] = 新数据;

修改指定索引的数据

数组[0] = 新数据;

函数

函数就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现代码的重复使用

函数的使用

// 声明函数

function 函数名() {

    //代码块

}

//调用函数

函数名();  // 通过函数名称来调用函数

函数的参数

       形参:函数定义时设置,接收调用时传入

       实参:函数调用时传入小括号的真实数据

// 带参数的函数声明

function 函数名(形参1, 形参2 , 形参3...) { // 可以定义任意多的参数,用逗号分隔

  // 函数体

}

// 带参数的函数调用

函数名(实参1, 实参2, 实参3...);

注意:在JavaScript中,形参的默认值是undefined。

函数的返回值

// 声明函数

function 函数名(){

    ...

    return  需要返回的值;

}

// 调用函数,接受返回值

var result = 函数名();

作用域

变量的有效范围

作用域链

在访问变量时按照就近原则

类和对象

创建对象的三种方式

方式1

var userZS = {

    //  左边表示对象的属性,右边表示对象的值

    name: "张三",

    gender: "男",

    birthyear: 19920918,

    addr: "老虎坡",

    isMarried:"否",

    salary: function() {

        return 15000;

    }

}     

// 如果是通过对象封装的数据,可以直接通过.属性获取。

//对象中还可以封装函数。

方式2

利用new关键字创建对象:var zs = new Obect();

方式3

通过编写构造函数来创建对象

function User(name,gender,birthyear,addr,isMarried){

       this.name=name;

       this.gender=gender;

……

}

var zs=new User(name,gender,……);

谁调用有this的构造函数,那么this就代表谁

对象的遍历

for (var k in obj) {

    console.log(k);      // 这里的 k 是属性名

    console.log(obj[k]); // 这里的 obj[k] 是属性值

}

js常用内置对象

  1. MATH对象

  1. 日期对象

创建一个JavaScript的Date实例,该实例呈现时间中的某个时刻

  1. 查看文档

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects

数组相关对象

  1. instanceof运算符

- instanceof可以判断一个对象是否是某个构造函数的实例

  1. Array.isArray()

-Array.isArray() 用于确定传递的值是否是一个 Array

数组元素的添加和修改

-push()方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。

- pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法会更改数组的长度。

- shift()方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。

- unshift() 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度。

let与const关键字

`var` 语句 用于声明一个函数范围或全局范围的变量。

const修饰

       const:常量的值是无法改变的

       也可以修饰对象和数组

let修饰

let语句声明一个块级作用域的局部变量

let允许你声明一个作用域被限制在块作用域中的变量、语句或者表达式。与var关键字不同的是,`var` 声明的变量作用域是全局或者整个函数块的。 `var` 和 `let` 的另一个重要区别,`let` 声明的变量不会在作用域中被提升,它是在编译时才初始化。

数组常用方法解析

       at():根据索引返回对应的值

  • 参数为负数:从后往前检索
  • 匹配给定索引的数组中的元素。如果找不到指定的索引,则返回 undefined

indexOf():返回指定值(第一次出现)对应的索引

  • 参数为负数:也是从指定的位置开始往后找
  • 如果不存在,则返回 -1

lastIndexOf(): 返回元素最后一次出现的索引,从数组的后面向前查找(从右边向左边找)

  • 如果不存在则返回 -1
  • 参数为正数的时候也是从右边向左边找。
  • values() 将数组转换为迭代器进行遍历,可以使用增强For循环。
  • concat() 用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
  • copyWithin() 复制数组的一部分到同一数组中的另一个位置,并返回它,不会改变原数组的长度。
  • entries() 方法返回一个新的 Array Iterator 对象,该对象包含数组中每个索引的键/值对。
  • every() 接受的参数是一个函数,它返回一个布尔值。

array1.every(isThreshold) //将左边数组中的每个值,都调用isThreshold进行计算

  • filter() 过滤数组的元素,该方法的返回值是truefalse,最终将为true的结果进行返回。

文档:

https://developer.mozilla.org/zhCN/docs/Web/JavaScript/Reference/Statements/const#%E6%8F%8F%E8%BF%B0

  • 19
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值