JS新手入门笔记整理:对象
- 对象可以分为两种:一种是“自定义对象”,另外一种是“内置对象”。自定义对象,指的是需要我们自己定义的对象。内置对象,指的是不需要我们自己定义的(即系统已经定义好的)、可以直接使用的对象。
- 在JavaScript中,常用的内置对象有4种,字符串对象(String)、数组对象(Array)、日期对象(Date)、数值对象(Math)。
📌字符串对象:String
获取字符串长度
语法
字符串名.length
调用对象的属性时,要用到点运算符(.),可以将其理解为“的”,如str.length可以看成“str的length(长度)”。
字符串大小写转换
- toLowerCase( )方法将大写字符串转化为小写字符串,
- toUpperCase( )方法将小写字符串转化为大写字符串。
语法
字符串名.toLowerCase( )
字符串名.toUpperCase( )
调用对象的方法时,要用到点运算符(.)。但是属性和方法不太一样,方法后面需要加上小括号( ),而属性则不需要。
获取字符串中某一个字符
charAt( )方法用来获取字符串中的某一个字符。
语法
字符串名.charAt(n)
- n是整数,表示字符串中的第(n+1)个字符。注意,字符串第1个字符的下标是0,第2个字符的下标是1,……,第n个字符的下标是(n-1),以此类推。
- 在字符串中,空格也是作为一个字符来处理的。
截取字符串
substring( ) 方法用来截取字符串的某一部分。
语法
字符串名.substring(start,end)
- tart表示开始位置,end表示结束位置。start和end都是整数,一般都是从0开始,其中end大于start。
- substring(start,end)的截取范围为“[start,end)”,也就是包含start,但不包含end。其中,end可以省略。当end省略时,截取的范围为“start到结尾”。
替换字符串
replace( )方法可以用一个字符串替换另外一个字符串的某一部分。
语法
字符串名.replace(原字符串,替换字符串)字符串名.replace(正则表达式,替换字符串)
分割字符串
split( )方法用来把一个字符串分割成一个数组,这个数组存放的是原来字符串的所有字符片段。有多少个片段,数组元素个数就是多少。
语法
字符串名.split("分割符")
- 分割符可以是一个字符、多个字符或一个正则表达式。此外,分割符不作为返回的数组元素的一部分。
- split( )方法有两个参数:第1个参数表示分割符,第2个参数表示获取“分割之后的前n个元素”。
- split(“ ")两个引号之间有空格,表示用空格作为分割符来分割。split(“"),两个引号之间没有空格,可以用来分割字符串的每一个字符。
检索字符串的位置
- indexOf( )方法可以找出“某个指定字符串”在字符串中“首次出现”的下标位置。
- lastIndexOf( )方法可以找出“某个指定字符串”在字符串中“最后出现”的下标位置。
语法
字符串名.indexOf(指定字符串)字符串名.lastIndexOf(指定字符串)
- 如果字符串中不包含“指定字符串”,indexOf( )或lastIndexOf( )会返回-1。
- indexOf( )和lastIndexOf( )不仅可以用于检索字符串,还可以用于检索单个字符。
📌数组对象:Array
“数组”可以用来存储一组“相同数据类型”(一般情况下)的数据。数组是“引用数据类型”,可以含有多个值。而基本数据类型只有一个值。
数组的创建
可以使用new关键字来创建一个数组。创建数组的常见形式有两种:一种是“完整形式”,另外一种是“简写形式”。
语法
var 数组名=new Array(元素1,元素2,……,元素n); //完整形式var 数组名=[元素1,元素2,……,元素n]; //简写形式
数组的获取
获取数组某一项的值,可以采用“下标”的方式来获取。
语法
var 数组名=[元素1,元素2,……,元素n]; //简写形式n=数组名[n]
n代表下表位置取整数,数组的下标是从0开始的,不是从1开始的。
数组的赋值
通过数组下标的方式可以给某一项赋一个新的值,或者给数组多增加一项。
语法
arr[i]=值;
获取数组长度
length属性用来获取数组的长度。
语法
数组名.length
截取数组某部分
slice( )方法用来获取数组的某一部分。slice,是“切片”的意思。
语法
数组名.slice(start,end);
- start表示开始位置,end表示结束位置。start和end都是整数,都是从0开始,其中end大于start。
- slice(start,end)的截取范围为[start,end),也就是“包含start但不包含end”。其中,end可以省略。当end省略时,获取的范围为“start到结尾”。
添加数组元素
在数组开头添加元素:unshift( )
unshift( )方法可以在数组开头添加新元素,并且可以得到一个新的数组(也就是原数组变了)。
语法
数组名.unshift(新元素1,新元素2,……,新元素n)
在数组结尾添加元素:push( )
push( )方法可以在数组结尾添加新元素,并且可以得到一个新的数组(也就是原数组变了)。
语法
数组名.push(新元素1,新元素2,……,新元素n)
删除数组元素
删除数组中第一个元素:shift( )
shift( )方法用来删除数组中的第一个元素,并且可以得到一个新的数组。
语法
数组名.shift( )
删除数组最后一个元素:pop( )
pop( )方法用来删除数组的最后一个元素,并且可以得到一个新数组。
语法
数组名.pop( )
比较数组大小
语法
数组名.sort(函数名)
“函数名”是定义数组元素排序的函数的名称。
颠倒数组顺序
reverse( )方法用来实现数组中所有元素的反向排列,也就是颠倒数组元素的顺序。reverse,是“反向”的意思。
语法
数组名.reverse( );
将数组元素连接成字符串
join( )方法用来将数组中的所有元素连接成一个字符串。
语法
数组名.join("连接符");
连接符是可选参数,是连接元素之间的符号。默认情况下,一般会采用英文逗号(,)作为连接符。如果想要实现字符之间没有任何东西,用 (“ ”) 作为连接符。
📌时间对象:Date
在JavaScript中,我们可以使用时间对象Date来处理时间。
语法
var 日期对象名 = new Date( );
创建一个日期对象,必须使用new关键字。其中Date对象的方法有很多,主要分为两大类:getXxx( )和setXxx( )。getXxx( )用于获取时间,setXxx( )用于设置时间。
获取时间:getXxx( )
方法 | 说明 |
getFullYear() | 获取年份,取值为4位数字 |
getMonth() | 获取月份,取值为0(一月)到11(十二月)之间的整数 |
getDate() | 获取日数,取值为1~31的整数 |
getHours() | 获取小时数,取值为0~23的整数 |
getMinutes() | 获取分钟数,取值为0~59的整数 |
getSeconds() | 获取秒数,取值为0~59的整数 |
设置时间:setXxx( )
方法 | 说明 |
setFullYear() | 可以设置年、月、日 |
setMonth() | 可以设置月、日 |
setDate() | 可以设置日 |
setHours() | 可以设置时、分、秒、毫秒 |
setMinutes() | 可以设置分、秒、毫秒 |
setSeconds() | 可以设置秒、毫秒 |
获取年、月、日
语法
var d=new Date( ); // 获取时间对象
var Day=d.getDate( ); // 获取日数
var Month=d.getMonth( )+1; // 获取月份
var Year=d.getFullYear( ); // 获取年份
getMonth( )方法的返回值是0(一月)到11(十二月)之间的整数,所以必须加上1,这样月份才正确。
设置年、月、日
语法
时间对象.setFullYear(year,month,day); // 设置年、月、日
时间对象.setMonth(month,day); // 设置月、日
时间对象.setDate(day); // 设置日
- year表示年,用一个4位的整数表示,如2017、2020等。
- month表示月,用0~11的整数表示。其中0表示1月,1表示2月,以此类推。
- day表示日,用1~31的整数表示。
获取时、分、秒
语法
var d=new Date( ); // 获取时间对象
var Hours=d. getHours( ); // 获取小时数
var Minutes=d. getMinutes( ); // 获取分钟数
var Seconds=d.getSeconds( ); // 获取秒数
设置时、分、秒
语法
时间对象.setHours(hour,min,sec,millisec); // 设置时、分、秒、毫秒。
时间对象.setMinutes(min,sec,millisec); // 设置分、秒、毫秒。
时间对象.setSeconds(sec,millisec); // 设置秒、毫秒。
- hour 表示时,取值为0~23的整数。
- min 表示分,取值为0~59的整数。
- sec 表示秒,取值为0~59的整数。
- millisec 表示毫秒,取值为0~999的整数。
获取星期数
getDay( )方法用来获取表示今天是星期几的一个数字。
语法
时间对象.getDay( );
getDay( )会返回一个数字,其中0表示星期天,1表示星期一,……,6表示星期六。
📌数学对象:Math
在JavaScript中,可以使用Math对象的属性和方法来实现各种运算。Math对象提供了大量“内置”的数学常量和数学函数。Math对象可以直接使用它的属性和方法。
语法
Math.属性
Math.方法
Math对象的属性
Math对象的属性
属性 | 说明 | 对应的数学形式 |
PI | 圆周率 | π |
LN2 | 2的自然对数 | In(2) |
LN10 | 10的自然对数 | In(10) |
LOG2E | 以2为底的e的对数 | Log2e |
LOG10E | 以10为底的e的对数 | log10e |
SORT2 | 2的平方根 | √2 |
SORT1_2 | 2的平方根的倒数 | 1/√2 |
Math对象的属性都是常量,它们都是大写的。
Math对象的方法
Math对象中的方法(常用)
方法 | 说明 |
max(a,b,..,n) | 返回一组数中的最大值 |
min(a,b,..,n) | 返回一组数中的最小值 |
sin(x) | 正弦 |
cos(x) | 余弦 |
tan(x) | 正切 |
asin(x) | 反正弦 |
acos(x) | 反余弦 |
atan(x) | 反正切 |
atan2(x) | 反正切 |
floor(x) | 向下取整 |
ceil(x) | 向上取整 |
random() | 生成随机数 |
Math对象中的方法(不常用)
方法 | 说明 |
abs(x) | 返回×的绝对值 |
sqrt(x) | 返回×的平方根 |
log(x) | 返回×的自然对数(底为e) |
pow(x,y) | 返回×的y次幂 |
exp(x) | 返回e的指数 |
生成随机数
random( )方法用来生成0~1的一个随机数。random,是“随机”的意思。这里的0~1包含0但不包含1,也就是[0, 1)。
语法
Math.random( )
使用技巧
随机生成某个范围内的“任意数” | Math.random( )*m | 表示生成0~m的随机数,如“Math.random( )*10”表示生成0~10的随机数。 |
Math.random( )*m+n | 表示生成n~m+n的随机数,如“Math.random( )*10+8”表示生成8~18的随机数。 | |
Math.random( )*m-n | 表示生成-n~m-n的随机数,如“Math.random( )*10-8”表示生成-8~2的随机数。 | |
Math.random( )*m-m | 表示生成-m~0的随机数,如“Math.random( )*10-10”表示生成-10~0的随机数。 | |
随机生成某个范围内的“整数” | Math.floor (Math.random( ) * (5+1)) | 生成0~5的随机整数 |
Math. floor (Math. random( )*(m+1)) | 生成0到m之间的随机整数 | |
Math.floor (Math. random( )*m)+1 | 生成1到m之间的随机整数(包括1和m) | |
Math.floor (Math.random( )*(m-n+l)) +n | 生成n到m之间的随机整数(包括n和m) |
相关文章:
JS新手入门笔记整理:对象
对象可以分为两种:一种是“自定义对象”,另外一种是“内置对象”。自定义对象,指的是需要我们自己定义的对象。内置对象,指的是不需要我们自己定义的(即系统已经定义好的)、可以直接使用的对象。在JavaScri…...
Python GIL 一文全知道!
GIL 作为 Python 开发者心中永远的痛,在最近即将到来的更新中,终于要彻底解决了,整个 Python 社群都沸腾了 什么是GIL? GIL是英文学名global interpreter lock的缩写,中文翻译成全局解释器锁。GIL需要解决的是线程竞…...
数据库级别的MD5加密(扩展)
首先,我们要知道什么是MD5? 1.主要是增强算法的复杂性和不可逆性 2.MD5不可逆,具体的值MD5是一样的 3.MD5破解网站的原理,背后有一个字典 代码案例: -- 加密 update testMD5 set pwdmd5(pwd) where id1; update testMD5 set…...
Docker安装Jenkins,配置Maven和Java
前言 这是一个java的springboot项目,使用maven构建 安装准备 需要将maven和jdk安装在服务器上,Jenkins需要用到,还有创建一个jenkins的目录,安装命令如下: docker run -d -uroot -p 9095:8080 -p 50000:50000 --n…...
游戏分组(100用例)C卷 (JavaPythonC语言C++Node.js)
部门准备举办一场王者荣耀表演赛,有10名游戏爱好者参与,分为两队,每队5人。 每位参与者都有一个评分,代表着他的游戏水平。为了表演赛尽可能精彩,我们需要把10名参赛者分为实力尽量相近的两队。一队的实力可以表示为这一队5名队员的评分总和。 现在给你10名参与者的游戏水…...
python函数装饰器保存信息
1 python函数装饰器保存信息 python函数装饰器,可以通过实例属性、全局变量、非局部变量和函数属性,来保存被装饰函数的状态信息。 1.1 统计调用并跟踪 描述 通过装饰器统计函数调用次数,并且用打印来跟踪调用记录。 此装饰器用类的__ca…...
AI真正的Killer App 仍然缺席
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
Docker 镜像以及镜像分层
Docker 镜像以及镜像分层 1 什么是镜像2 Docker镜像加载原理2.1 UnionFs:联合文件系统2.2 Docker镜像加载原理2.3 Docker镜像的特点 3 镜像的分层结构4 可写的容器层 1 什么是镜像 镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行…...
aigc 启动器 sd-webui-aki-v4 decode_base64_to_file
下载地址: SD-WebUI启动器 绘世-启动器 | 万物档案 decode_base64_to_file报错: File "E:\BaiduNetdiskDownload\stable diffusion\sd-webui-aki-v4\extensions\sd-webui-controlnet\scripts\external_code.py", line 7, in <module>fr…...
【C++进阶05】AVL树的介绍及模拟实现
一、AVL树的概念 二叉搜索树的缺点 二叉搜索树虽可以缩短查找效率 但如果数据有序或接近有序 二叉搜索树将退化为单支树 查找元素相当于在顺序表中搜索元素,效率低下 AVL树便是解决此问题 向二叉搜索树中插入新结点 并保证每个结点的左右子树 高度之差的绝对值不超…...
MySQL视图 索引 面试题
一. 视图 视图:一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果 视图语法 -- 创建 create view 视图名 as 查询语句;-- 使用 select * f…...
JAVA实现文件上传至阿里云
注册阿里云账号后,开通好对象存储服务(OSS),三个月试用 阿里云登录页 (aliyun.com) 目录 一.创建Bucket 二.获取AccessKey(密钥) 三.参考官方SDK文件,编写入门程序 1.复制阿里云OSS依赖,粘贴…...
设计模式之外观模式【结构型模式】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档> 学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某…...
Qt QCheckBox复选按钮控件
文章目录 1 属性和方法1.1 文本1.2 三态1.3 自动排他1.4 信号和槽 2 实例2.1 布局2.2 代码实现 Qt中的复选按钮类是QCheckBox它和单选按钮很相似,单选按钮常用在“多选一”的场景,而复选按钮常用在"多选多"的场景比如喜欢的水果选项中…...
加速科技ST2500 数模混合信号测试设备累计装机量突破500台!
国产数字机,测试中国芯!新年伊始,国产半导体测试设备领军企业加速科技迎来了振奋人心的一刻,ST2500 数模混合信号测试设备累计装机量突破500台!加速科技凭借其持续的创新能力、完善的解决方案能力、专业热忱的本地化服…...
ASP.NETCore WebAPI 入门 杨中科
ASP.NETCore WebAPI入门1 回顾 mvc开发模式 前端代码和后端代码是混在一个项目之中 WEB API 1、什么是结构化的Http接口。Json。 2、Web API项目的搭建。 3、Web API项目没有Views文件夹。 4、运行项目,解读代码结构。 5、【启用OpenAPI支持】→>swagger,在界…...
问题 C: 活动选择
题目描述 学校在最近几天有n个活动,这些活动都需要使用学校的大礼堂,在同一时间,礼堂只能被一个活动使。由于有些活动时间上有冲突,学校办公室人员只好让一些活动放弃使用礼堂而使用其他教室。 现在给出n个活动使用礼堂的起…...
SpringBoot学习(五)-Spring Security配置与应用
注:此为笔者学习狂神说SpringBoot的笔记,其中包含个人的笔记和理解,仅做学习笔记之用,更多详细资讯请出门左拐B站:狂神说!!! Spring Security Spring Security是一个基于Java的开源框架,用于在Java应用程…...
Java解决删除子串后的字符串最小长度
Java解决删除子串后的字符串最小长度 01 题目 给你一个仅由 大写 英文字符组成的字符串 s 。 你可以对此字符串执行一些操作,在每一步操作中,你可以从 s 中删除 任一个 "AB" 或 "CD" 子字符串。 通过执行操作,删除所…...
日志系统一(elasticsearch+filebeat+logstash+kibana)
目录 一、es集群部署 安装java环境 部署es集群 安装IK分词器插件 二、filebeat安装(docker方式) 三、logstash部署 四、kibana部署 背景:因业务需求需要将nginx、java、ingress日志进行收集。 架构:filebeatlogstasheskib…...
游戏版 ChatGPT,要用 AI 角色完善生成工具实现 NPC 自由
微软与 AI 初创公司 Inworld 合作,推出基于 AI 的角色引擎和 Copilot 助理,旨在提升游戏中 NPC 的交互力和生命力,提升游戏体验。Inworld 致力于打造拥有灵魂的 NPC,通过生成式 AI 驱动 NPC 行为,使其动态响应玩家操作…...
加工零件的题解
目录 原题描述: 题目描述 输入格式 输出格式 样例 #1 样例输入 #1 样例输出 #1 样例 #2 样例输入 #2 样例输出 #2 提示 题目大意: 主要思路: 但是我们怎么才能判断出x走到1时L是偶数还是奇数呢? 初始化:…...
走进shell
Linux系统启动时,会自动创建多个虚拟控制台。虚拟控制台是运行在Linux系统内存中的终端会话。 打开Linux控制台Terminal使用tty命令查看当前使用的虚拟控制台。 注:tty 表示电传打字机(teletypewriter) $ tty /dev/pts/0表示当前使用的是/dev/pts/0 虚拟…...
【Python】使用tkinter设计开发Windows桌面程序记事本(2)
上一篇:【Python】使用tkinter设计开发Windows桌面程序记事本(1)-CSDN博客 下一篇: 作者发炎 此代码模块是继承上一篇文章的代码模块的基础上开始设计开发的。 如果不知道怎么新建"记事本项目"文件夹,请参…...
Flutter DateTime 常用处理
今天介绍一下 DateTime 的一些常用功能,对其进行一个整理。 最近在开发过程中好多时候都会使用到时间方面的方法,心想还是统一处理一下,封装一个管理类,这个类可以满足我们开发过程中常用的时间方法。 今天正好整理了一下&#…...
【uniapp】APP打包上架应用商-注意事项
初雪云-uniapp启动图自定义生成(支持一键生成storyboard) HBuilderX需要的自定义storyboard文件格式为 " zip压缩包 " 一、“Android” — 设置targetSdkVersion 小米、OPPO、vivo、华为等主流应用商店,将于2023年12月采用 targetS…...
【算法题】43. 字符串相乘
题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 注意:不能使用任何内置的 BigInteger 库或直接将输入转换为整数。 示例 1: 输入: num1 "2", num2 "3…...
CH341 SPI方式烧录BK7231U
CH341是一个USB总线的转接芯片,通过USB总线提供异步串口、打印口、并口以及常用的2线和4线等同步串行接口。 BK7231U Wi-Fi SOC芯片,内嵌处理器。1. 符合802.11b/g/n 1x1协议 2. 17dBm 输出功率3. 支持20/40 MHz带宽和STBC 4. 支持Wi-Fi STA、AP、…...
sd-webui-EasyPhoto win 安装笔记
目录 安装教程: 插件介绍 ControlNet 1.1 Tile: launch.py问题 依赖库 webui安装问题...
gradient_checkpointing
点评:本质是减少内存消耗的一种方式,以时间或者计算换内存 gradient_checkpointing(梯度检查点)是一种用于减少深度学习模型中内存消耗的技术。在训练深度神经网络时,反向传播算法需要在前向传播和反向传播之间存储中间计算结果,以便计算梯度并更新模型参数。这些中间结…...
爱漫画-只做精品的韩漫网站/优化网站排名费用
什么才是好房子,住起来舒适的房子就是好房子,作为设计来说,如何设计出让客户喜欢的好房子,先来从整体上说总结有以下几方面。更多室内设计学习文章、资料、教程、软件、插件等,可以关注up主哦, 进入up主学页…...
怎样建设自己的美甲网站/站长之家工具
package com.bjpowernode.javase.enum2; // 采用枚举的方式改造程序 /* 总结: 1、枚举是一种引用数据类型 2、枚举类型怎么定义,语法是? enum 枚举类型名{ 枚举值1,枚举值2 } 3、结果只有两种情况的…...
应聘网站运营建设面试/国内做seo最好的公司
今天突发奇想,云服务器总是系统盘太小,数据盘太小,如果合并在一起,容量不就大了吗 重要的事情提前说,重要的事情提前说。 !!!数据无价,谨慎操作,操作之前做好…...
wordpress侧边栏tab/网络推广策划书
WinForm 之 窗口最小化到托盘及右键图标显示菜单 Form最小化是指整个Form都缩小到任务栏上,但是窗体以Form的标题栏形式显示在任务栏上, 若是想让Form以Icon的形式显示在任务栏右下角,则需要给Form添加一个NotifyIcon控件。 一、添加NotifyIc…...
网页游戏排行版/佛山网站seo
1、months_between(date1,date2) 返回两个日期之间的月份的差值 (1)、如果两个日期月份内天数相同,或者都是某个月的最后一天,返回一个整数。否则,返回数值带小数 select months_between(sysdate,addtime)as diff_month from test6 2、interval 时间间…...
php企业门户网站模板/好的seo公司营销网
慕虎7371278谢邀,现在少用的 Java,所以这些东西不熟了。处理办法有两类,一类是你自己把类型转换成 String,这样生成的 JSON 肯定是带引号的,但是这样需要修改模型或者添加适配模型另一类方法是从 jackson 的文档中去找…...