【保姆级详细介绍JavaScript初识及基本语法】

news2024/12/24 21:32:46

在这里插入图片描述

🎥博主:程序员不想YY啊
💫CSDN优质创作者,CSDN实力新星,CSDN博客专家
🤗点赞🎈收藏⭐再看💫养成习惯
✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步!

在这里插入图片描述

前言

  • 前言
  • 变量
  • 数据类型
  • 操作符
  • 控制结构
  • 函数
  • 对象
  • 数组
  • ES6 新特性

前言

JavaScript 是一种高级的、解释型的编程语言。它是一门广泛用于网页交互设计的脚本语言,并也用于许多非浏览器环境,比如 Node.js。下面,我会详细介绍 JavaScript 的基本语法。

变量

在 JavaScript 中,你可以使用 var(老旧的方式)、letconst 关键字来声明变量。

var:

var name = 'Alice';

let (引入于 ES6,即ECMAScript 2015,现在建议代替 var 使用):

let age = 25;

const (常量,声明后不能改变):

const PI = 3.14;

数据类型

JavaScript 是一种动态类型语言,这意味着不需要在声明变量时指定数据类型。数据类型会在运行时自动确定。JavaScript 中的数据类型包括:

  • 字符串 (String): 任何被引号引起来的文本。
  • 数字 (Number): 包括整数和浮点数。
  • 布尔值 (Boolean): truefalse
  • 对象 (Object): 键值对的集合。
  • 数组 (Array): 有序的值的集合。
  • 函数 (Function): 可执行的代码块。
  • Undefined: 表示未定义。
  • Null: 表示一个无值。

操作符

JavaScript 中有多种类型的操作符,包括:

  • 赋值 (=): 用于给变量赋值。
  • 数学 (+, -, *, /, %): 用于执行基本的数学操作。
  • 比较 (==, ===, !=, !==, <, >, <=, >=): 用于比较两个值。
  • 逻辑 (&&, ||, !): 用于逻辑运算。

控制结构

JavaScript 提供了标准的控制结构,例如条件语句和循环。

条件语句:

if (condition) {
  // 当条件为 true 时执行
} else {
  // 当条件为 false 时执行
}

循环:

// for 循环
for (let i = 0; i < 5; i++) {
  // 将会执行五次
}

// while 循环
let i = 0;
while (i < 5) {
  // 如果 i 小于 5,将会继续执行
  i++;
}

函数

函数是可重复使用的代码块。在 JavaScript 中,函数可以定义、调用,并且可以作为值传递。

function greet(name) {
  return 'Hello, ' + name + '!';
}

const greeting = greet('Alice');
console.log(greeting); // 输出 'Hello, Alice!'

你还可以创建匿名函数,并把它们赋值给变量:

const sum = function(a, b) {
  return a + b;
};

sum(1, 2); // 返回 3

或者使用箭头函数(ES6 特性):

const add = (a, b) => a + b;

add(1, 2); // 返回 3

对象

JavaScript 中的对象可以通过对象字面量来创建,它是一种键/值对的集合。

const person = {
  name: 'Alice',
  age: 25,
  greet: function() {
    console.log('Hello, ' + this.name + '!');
  }
};

person.greet(); // 输出 'Hello, Alice!'

数组

数组是一种特殊类型的对象,用于存储有序的值。

const fruits = ['apple', 'banana', 'cherry'];

console.log(fruits[0]); // 输出 'apple'

ES6 新特性

ES6(ECMAScript 2015)介绍了许多新特性,其中包括:

  • 箭头函数
  • (class)
  • 模板字面量 (${variable})
  • 默认参数 (function(x = 1) { ... })
  • 解构赋值 (const { a, b } = object;)
  • 扩展操作符 (...)
  • Promises 和 Async/Await 用于异步编程
  • let 和 const 范围限定的变量声明

JavaScript 基本语法涵盖的内容非常宽泛,这里仅仅是一个快速概览。
为了学习和掌握 JavaScript,你需要深入各个部分,并在实际编程中不断练习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1874183.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WPS表格下拉数据不自动增长的办法

使用WPS表格的时候&#xff0c;发现下拉数据总是会自动增长。但是当我们不需要它自动增长的话&#xff0c;怎么办呢&#xff1f; 只需要按住ctrl然后再下拉&#xff0c;这样数据就不会自动增长啦

建投数据人力资源管理系统APP完成迭代升级

近日&#xff0c;建投数据人力资源管理系统APP完成迭代升级。 此次升级思路&#xff0c;遵循提升移动应用的功能和用户体验&#xff1b;直观的界面、快速的响应速度和安全的数据存储&#xff1b;个性化的功能&#xff0c;以满足不同员工的需求和使用偏好。 人力资源管理系统A…

Vite脚手架+Vant组件库初始化前端项目

脚手架概念&#xff1a; 在前端开发中&#xff0c;脚手架&#xff08;Scaffold&#xff09;是指一个用于快速搭建项目基础结构的工具或模板。脚手架包含了项目所需的基本文件结构、配置文件、依赖管理等内容&#xff0c;使开发者能够更快速地开始项目开发&#xff0c;而不必从…

深度学习 --- stanford cs231学习笔记七(训练神经网络之梯度下降优化器)

5&#xff0c;梯度下降优化器 5&#xff0c;1 梯度下降在深度学习中的作用 在深度学习中&#xff0c;权重W的值是否合理是由损失函数L来判断的。L越小&#xff0c;表示W的设置越happy。L越大&#xff0c;表示W的值越unhappy。 为了让L越来越小&#xff0c;常用的方法是梯度下降…

「ETL趋势」FDL定时任务区分开发/生产模式、API输入输出支持自定义响应解析

FineDataLink作为一款市场上的顶尖ETL工具&#xff0c;集实时数据同步、ELT/ETL数据处理、数据服务和系统管理于一体的数据集成工具&#xff0c;进行了新的维护迭代。本文把FDL4.1.7最新功能作了介绍&#xff0c;方便大家对比&#xff1a;&#xff08;产品更新详情&#xff1a;…

慌慌张张,匆匆忙忙,又是学习的一天

今天学进程 进程的状态 &#xff08;本科的考点我记得哈哈&#xff09; 什么是线程 线程的状态 线程和进程的区别 一个共享 一个私有 独立 多线程的优缺点 线程的分类 内核支持线程 用户级线程 组合方式线程 协程coroutine 进程 分配资源的最小单位 线程 是cpu调度的最小…

【RNN练习】LSTM-火灾温度预测

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 前期准备工作 import torch.nn.functional as F import numpy as np import pandas as pd import torch from torch import nn1. 导入数据 data pd.read_cs…

使用谷歌的colab运行代码初试

前言 最近学习李沐的动手深度学习&#xff0c;使用conda创建并配置环境应用mxnet框架&#xff0c;配置环境、兼容等问题给我折腾坏了。干脆转到谷歌的交互式环境colab进行操作。 不过使用colab的前提是会科学上网。否则连谷歌都用不了。这个科学上网就需要自己解决了。 colab可…

【教程】几种不同的RBF神经网络

本站原创文章&#xff0c;转载请说明来自《老饼讲解-机器学习》www.bbbdata.com 目录 一、经典RBF神经网络1.1.经典径向基神经网络是什么1.2.经典径向基神经网络-代码与示例 二、广义回归神经网络GRNN2.1.广义回归神经网络是什么2.2.广义回归神经网络是什么-代码与示例 三、概率…

dledger原理源码分析系列(一)架构,核心组件和rpc组件

简介 dledger是openmessaging的一个组件&#xff0c; raft算法实现&#xff0c;用于分布式日志&#xff0c;本系列分析dledger如何实现raft概念&#xff0c;以及dledger在rocketmq的应用 本系列使用dledger v0.40 本文分析dledger的架构&#xff0c;核心组件&#xff1b;rpc组…

JavaScript:实现内容显示隐藏(展开收起)功能

一、场景 点击按钮将部分内容隐藏&#xff08;收起&#xff09;&#xff0c;再点击按钮时将内容显示&#xff08;展开&#xff09;出来。 二、技术摘要 js实现实现内容显示隐藏js动态给ul标签添加li标签js遍历数组 三、效果图 四、代码 js_block_none.js代码 var group1 doc…

springboot中使用springboot cache

前言&#xff1a;SpringBoot中使用Cache缓存可以提高对缓存的开发效率 此图片是SpringBootCache常用注解 Springboot Cache中常用注解 第一步&#xff1a;引入依赖 <!--缓存--><dependency><groupId>org.springframework.boot</groupId><artifactId…

【算法刷题 | 动态规划14】6.28(最大子数组和、判断子序列、不同的子序列)

文章目录 35.最大子数组和35.1题目35.2解法&#xff1a;动规35.2.1动规思路35.2.2代码实现 36.判断子序列36.1题目36.2解法&#xff1a;动规36.2.1动规思路36.2.2代码实现 37.不同的子序列37.1题目37.2解法&#xff1a;动规37.2.1动规思路37.2.2代码实现 35.最大子数组和 35.1…

战地战地风云最强的免费加速器 2024低延迟不卡顿加速器推荐

来喽来喽&#xff0c;steam夏季促销它又来喽&#xff0c;战地风云&#xff0c;第一人称射击游戏&#xff0c;而且这次迎来了史低&#xff0c;游戏背景设定为近未来&#xff08;公元2042年&#xff09;&#xff0c;会有动态的天气系统&#xff0c;以及改善后的破坏系统。该作为《…

LLaMA2模型训练加速秘籍:700亿参数效率提升195%!

点击蓝字 关注我们 关注并星标 从此不迷路 计算机视觉研究院 公众号ID &#xff5c; 计算机视觉研究院 学习群 &#xff5c; 扫码在主页获取加入方式 开源地址&#xff1a;https://github.com/hpcaitech/ColossalAI 计算机视觉研究院专栏 Column of Computer Vision Ins…

微服务框架中Nacos的个人学习心得

微服务框架需要学习的东西很多&#xff0c;基本上我把它分为了五个模块&#xff1a; 第一&#xff1a;微服务技术模块 分为三个常用小模块&#xff1a; 1.微服务治理&#xff1a; 注册发现 远程调用 配置管理 网关路由 2.微服务保护&#xff1a; 流量控制 系统保护 熔断降级 服…

【MATLAB源码-第231期】基于matlab的polar码编码译码仿真,对比SC,SCL,BP,SCAN,SSC等译码算法误码率。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 极化码&#xff08;Polar Code&#xff09; 极化码&#xff08;Polar Code&#xff09;是一种新型的信道编码技术&#xff0c;由土耳其裔教授Erdal Arıkan在2008年提出。极化码在理论上被证明能够在信道容量上达到香农极限…

来聊聊nacos

先关注下下方公众号呗&#xff1a; 第1部分&#xff1a;引言 微服务的挑战 尽管微服务架构带来了许多好处&#xff0c;如敏捷性、可扩展性和容错性&#xff0c;但它也带来了一些挑战&#xff0c;特别是在服务发现、配置管理、服务间通信和运维管理方面。这些挑战需要有效的解…

编译调试swift5.7源码

环境&#xff1a; 电脑&#xff1a;apple m1 pro系统&#xff1a;macOS13Xcode: 14.2Cmake: 3.25.1Ninja: 1.11.1sccache: 0.3.3swift代码地址 新建一个文件夹&#xff08;用于存放clone下来的swift源码&#xff09;&#xff0c;然后进入该文件夹。本例中是在终端执行了mkdir…

centos 安装deb格式安装包

背景 研发给了我一个deb包&#xff0c;需要我在centos 这种服务器操作系统上安装... deb包安装一般是使用dpkg -i xxxx.deb 命令&#xff0c;dpkg是Debian类型的系统,但是 通常centos是没有dpkg命令的... 直接就报&#xff1a;bash dpkg 未找到命令... 本来找研发给我编译rp…