【蓝桥杯JavaScript基础入门】一、JavaScript基础

关于JavaScript

JavaScript 是一种高级的解释型语言,基于原型、函数先行,是一门多范式的语言。它支持面向对象编程、命令式编程和函数式编程,提供语法来操控文本、数组等,不支持 I/O,比如网络、存储和图形等(这些都可以由它的宿主环境提供支持)。

它被世界上的绝大多数网站所使用,也被世界主流浏览器支持。

JavaScript 的语言设计主要受到了 Self 和 Scheme的影响,语法结构上又与 C 语言有很多相似。随着最新的 HTML5 和 CSS3 语言标准的推行,它还可用于游戏、桌面和移动应用程序的开发和在服务器端网络环境运行,如 Node.js。

组成

  • **ECMAScript:**语法标准。
  • **DOM:**操作网页上的元素的 API。
  • **BOM:**操作浏览器的部分功能的 API

特点

  • 可以使用任何文本编辑工具编写,使用浏览器就可以执行
  • 代码不进行预编译,从上往下逐行执行,不需要进行严格的变量声明
  • 主要用来为HTML 页面添加交互行为

每次实验都需要新建一个test.html文件,然后在这个文件上开展后续实验:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body></body>
</html>

JavaScript包含在<script><script>标签里,放head标签或body标签都行,结果没什么区别,也可以通过外部引入(页面复杂时便于维护)。

变量

数据都存在内存中,变量就是一个用于存放数值的容器。每个变量存放的数值是可变的,都占有一段内存。

JS使用var关键字声明变量:

javascript 复制代码
var name = "yourname";

JS变量命名规则

1.变量名必须以字母, _, $ 开头。

2.变量可以包含字母,数字,_和$。

3.不能使用关键字做为变量名。

4.变量名不能有空格。

5.变量名对大小写敏感。

类型

Number

String

Boolean

Array

Object

动态类型

// 单行注释;/* 多行注释 */

数字与运算符

JS中不管什么数字用var声明就行,运算符和运算顺序和其它语言类似。

数组

两种语法创建数组:

javascript 复制代码
var array1 = new Array(1, 2, 3);

var array2 = [1, 2, 3];

多维数组:

javascript 复制代码
var array0 = [[1, 2, 3], [4, 5, 6]];

要修改数组直接为要修改的元素提供新值,使用array.length获取数组长度。

数组和字符串间转换

split()可以分割字符串,使其转化为对应数组;join()可以连接数组为字符串。

添加 / 删除数组中的元素

push() -在数组末尾添加元素

pop() -删除并返回数组最后一个元素(数组为空时返回Undefined)

Null & Undefined

undefined 表示所有未赋值变量的默认值, null 表示一个变量不指向任何对象地址。

字符串

toString()和Number()可以实现字符串(都是数字)和数字相互转换,字符串可以使用+连接,使用string.length函数获取长度。

使用indexOf()判断指定字符串从指定下标(未指定则默认为0)开始是否包含某字符串:

javascript 复制代码
string.indexOf(shortStr, startIndex);

可以使用slice(start, end)提取某字符串的子字符串(左闭右开),使用toLowerCase()和toUpperCase()转换大小写,使用replace()来替换字符串内容(只替换首次出现的匹配项)。

转换

转换成字符串

toString()方法;String()方法;拼接字符串。

转换成数值

Number(),不是数值返回NaN;parseInt(),parseFloat()把字符串转为整数、浮点数;减0操作(如果字符串不是数值,类型变成number,返回NaN).

转换成布尔类型

Boolean()函数;在流式控制语句中的隐式转换。

相关推荐
摇滚侠5 小时前
搭建前端开发环境 安装 nodejs 设置淘宝镜像 最简化最标准版本 不使用 NVM NVM 高版本无法安装低版本 nodejs
java·开发语言·node.js
t198751285 小时前
MATLAB十字路口车辆通行情况模拟系统
开发语言·matlab
yyk的萌5 小时前
AI 应用开发工程师基础学习计划
开发语言·python·学习·ai·lua
Jave21085 小时前
实现全局自定义loading指令
前端·vue.js
奔跑的呱呱牛5 小时前
CSS Grid 布局参数详解(超细化版)+ 中文注释 Demo
前端·css·grid
木斯佳6 小时前
前端八股文面经大全:影刀AI前端一面(2026-04-01)·面经深度解析
前端·人工智能·沙箱·tool·ai面经
Amumu121386 小时前
Js:正则表达式(一)
开发语言·javascript·正则表达式
小江的记录本6 小时前
【Linux】《Linux常用命令汇总表》
linux·运维·服务器·前端·windows·后端·macos
无人机9017 小时前
Delphi 网络编程实战:TIdTCPClient 与 TIdTCPServer 类深度解析
java·开发语言·前端
froginwe117 小时前
CSS 图像拼合技术
开发语言