1.数组

在JavaScript中,数组是一种非常灵活的数据结构,用于存储多个值。数组可以包含任何类型的数据,包括数字、字符串、对象甚至其他数组(也就是多维数组)。JavaScript中的数组是动态的,这意味着它们的大小可以随时改变。

1.1创建数组

  1. 数组字面量
let arr = [1,2,3,4,5]
  1. Array构造函数
let fruits = new Array("Apple", "Banana", "Cherry");
  1. Array.of()
let fruits = Array.of("Apple", "Banana", "Cherry");
  1. Array.from()
let arrayLike = {0: "Apple", 1: "Banana", 2: "Cherry", length: 3}

1.2数组方法

JavaScript数组提供了许多内置方法,用于操作数组。以下是一些常用的数组方法:

  1. push()pop()

    • push():在数组末尾添加一个或多个元素,并返回新数组的长度。
    • pop():移除数组的最后一个元素,并返回被移除的元素。
let fruits = ["Apple", "Banana"];
fruits.push("Cherry");
console.log(fruits); // 输出 ["Apple", "Banana", "Cherry"]
let removed = fruits.pop();
console.log(fruits); // 输出 ["Apple", "Banana"]
console.log(removed); // 输出 "Cherry"
  1. unshift()shift()

    • unshift():在数组的开头添加一个或多个元素,并返回新数组的长度。
    • shift():移除数组的第一个元素,并返回被移除的元素。
let fruits = ["Banana", "Cherry"];
fruits.unshift("Apple");
console.log(fruits); // 输出 ["Apple", "Banana", "Cherry"]
let removed = fruits.shift();
console.log(fruits); // 输出 ["Banana", "Cherry"]
console.log(removed); // 输出 "Apple"

1.3数组遍历

你可以使用多种方式遍历数组:

  1. for循环
let fruits = ["Apple", "Banana", "Cherry"];
for (let i = 0; i < fruits.length; i++) {
console.log(fruits[i]);
}
  1. forEach()
let fruits = ["Apple", "Banana", "Cherry"];
fruits.forEach(fruit => {
console.log(fruit);
});
  1. for … of循环:
let fruits = ["Apple", "Banana", "Cherry"];
for (let fruit of fruits) {
console.log(fruit);
}

2.函数

JavaScript中的函数是一段可以被重复调用的代码块。函数允许你组织代码,使其更加模块化和可重用。以下是JavaScript函数的一些基本概念和用法。

2.1函数的定义

function functionName(parameters) {
// 代码
}

2.2函数的参数以及返回值

function calculateSquare(number) {
return number * number;
}
console.log(calculateSquare(5)); // 输出 25

2.3函数的作用域

函数有自己的作用域,这意味着在函数内部声明的变量在函数外部是不可见的。

2.4函数传参

function doSomethingWith(value, callback) {
return callback(value);
} function square(x) {
return x * x;
} console.log(doSomethingWith(4, square)); // 输出 16

3.对象

什么是对象?

  • 在 JavaScript 中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。 对象是由属性和方法组成的。
  • 属性:事物的特征,在对象中用属性来表示(常用名词)
  • 方法:事物的行为,在对象中用方法来表示(常用动词)
    创建对象的三种方式
  1. 使用对象字面量创建对象
var star = {
name : 'pink',
age : 18,
sex : '男',
sayHi : function(){
alert('大家好啊~');
}
};
  1. 利用 new Object 创建对象:
var andy = new Obect();
andy.name = 'pink';
andy.age = 18;
andy.sex = '男';
andy.sayHi = function(){
alert('大家好啊~');
  1. 利用构造函数创建对象
    构造函数
    构造函数:是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与 new
    运算符一起使用。我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面。
    构造函数的封装格式:
function 构造函数名(形参1,形参2,形参3) {
this.属性名1 = 参数1;
this.属性名2 = 参数2;
this.属性名3 = 参数3;
this.方法名 = 函数体;
}

学习JavaScript第三天的更多相关文章

  1. 学习javascript数据结构(三)——集合

    前言 总括: 本文讲解了数据结构中的[集合]概念,并使用javascript实现了集合. 原文博客地址:学习javascript数据结构(三)--集合 知乎专栏&&简书专题:前端进击者 ...

  2. 学习 JavaScript (三)核心概念:语法、变量、数据类型

    JavaScript 的核心概念主要由语法.变量.数据类型.操作符.语句.函数组成,这篇文章主要讲解的是前面三个,后面三个下一篇文章再讲解. 01 语法 熟悉 JavaScript 历史的人应该都知道 ...

  3. 学习JavaScript第三周

    字符串的遍历,字符串虽是简单数据类型却有对应的属性和方法,这是因为字符串是包装类型(当然布尔类型和数字类型也是包装类型),临时具有对象的属性和方法,在使用完后就会释放对象. 简单的淡入淡出的轮播图,原 ...

  4. 学习javascript数据结构(二)——链表

    前言 人生总是直向前行走,从不留下什么. 原文地址:学习javascript数据结构(二)--链表 博主博客地址:Damonare的个人博客 正文 链表简介 上一篇博客-学习javascript数据结 ...

  5. 学习javascript数据结构(四)——树

    前言 总括: 本文讲解了数据结构中的[树]的概念,尽可能通俗易懂的解释树这种数据结构的概念,使用javascript实现了树,如有纰漏,欢迎批评指正. 原文博客地址:学习javascript数据结构( ...

  6. (转)轻松学习JavaScript三:JavaScript与HTML的结合

    摘自:http://blog.csdn.net/erlian1992 HTML中的JavaScript脚本必须位于<script>与</script>标签之间,JavaScri ...

  7. 前端资讯周报 3.6 - 3.12: 对学习Javascript最有帮助的三本书,以及HTML标题的迷思

    每周一我都会分享上一周我订阅的技术站点中,和解决问题的过程中阅读到的值得分享的文章. 毕竟个人的阅读量有限,也欢迎大家留言或者私信给我你们阅读到的,对你们前端技术有帮助的任何内容,题材不限,语言不限. ...

  8. ife task0003学习笔记(三):JavaScript闭包

    一.this易错分析 在学习闭包的时候,有一个概念this很重要,关于this的理解,下面3种情况:this指向谁? fn.call(obj1); obj2.fn() fn() 答案是obj1 obj ...

  9. 重读《学习JavaScript数据结构与算法-第三版》-第2章 ECMAScript与TypeScript概述

    定场诗 八月中秋白露,路上行人凄凉: 小桥流水桂花香,日夜千思万想. 心中不得宁静,清早览罢文章, 十年寒苦在书房,方显才高志广. 前言 洛伊安妮·格罗纳女士所著的<学习JavaScript数据 ...

  10. 重读《学习JavaScript数据结构与算法-第三版》- 第3章 数组(一)

    定场诗 大将生来胆气豪,腰横秋水雁翎刀. 风吹鼍鼓山河动,电闪旌旗日月高. 天上麒麟原有种,穴中蝼蚁岂能逃. 太平待诏归来日,朕与先生解战袍. 此处应该有掌声... 前言 读<学习JavaScr ...

随机推荐

  1. 【转载】 Makefile的静态模式%.o : %.c

    版权声明:本文为CSDN博主「猪哥-嵌入式」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/u012351051 ...

  2. 清除 Nuxt 状态缓存:clearNuxtState

    title: 清除 Nuxt 状态缓存:clearNuxtState date: 2024/8/7 updated: 2024/8/7 author: cmdragon excerpt: 摘要:本文介 ...

  3. B站基于Apache DolphinScheduler的一站式大数据集群管理平台(BMR)初窥

    一.背景 大数据服务是数据平台建设的基座,随着B站业务的快速发展,其大数据的规模和复杂度也突飞猛进,技术的追求也同样不会有止境. B站一站式大数据集群管理平台(BMR),在千呼万唤中孕育而生.本文简单 ...

  4. 使用 defineNuxtRouteMiddleware 创建路由中间件

    title: 使用 defineNuxtRouteMiddleware 创建路由中间件 date: 2024/8/10 updated: 2024/8/10 author: cmdragon exce ...

  5. [天线原理及设计>基本原理] 1. 辐射机制

    1. 辐射机制 1.1. Single Wire 单线 如果电荷不移动,则不会产生电流,也不会产生辐射. 如果电荷以匀速移动: a. 如果电线是直的,并且范围是无限的,则没有辐射. b. 如果电线弯曲 ...

  6. JavaScript设计模式样例二十 —— 中介者模式

    中介者模式(Mediator Pattern) 定义:用来降低多个对象和类之间的通信复杂性.目的:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独 ...

  7. 痞子衡嵌入式:在IAR开发环境下将尽可能多的代码重定向到RAM中执行的方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在IAR开发环境下将尽可能多的代码重定向到RAM中执行的方法. 最近和同事在讨论一个客户案例,客户 APP 工程是基于 IAR 开发环境 ...

  8. 给vue+element-ui动态设置主题色(包括外链样式、内联样式、行内样式)

    基本思路 实现思路:实现一个mixins混入的主题js即theme.js,注册到全局下.使用el-color-picker组件切换颜色的时候,把颜色值传递到根root下,在根实例下监听主题色的变化来更 ...

  9. 全面升级,票据识别新纪元:合合信息TextIn多票识别2.0

    ​ 票据识别 - 自动化业务的守门员 发票.票据识别,是OCR技术和RPA.CMS系统结合的一个典型场景,从覆盖率.覆盖面的角度来说,应该也是结合得最成功的场景之一. 旧瓶装新酒,已经成熟的产品何苦费 ...

  10. Azure 入门系列 (第四篇 Key Vault)

    本系列 这个系列会介绍从 0 到 1 搭建一个 Web Application 的 Server. 间中还会带上一些真实开发常用的功能. 一共 6 篇 1. Virtual Machine (VM) ...