JavaScript-内置对象-笔记

1.Math对象
Math对象: 用于进行数字处理
自带的对象 不是构造函数---不需要new
属性: Math.PI ----- 圆周率
方法:
Math.floor(数字) ----- 向下取整 (只要整数位)
Math.ceil(数字) ---- 向上取整(不管小数位是几,直接进一)
Math.round(数字) ---- 四舍五入取整
Math.abs(数字) ---- 绝对值
Math.max(数字1,数字2...) ---- 求最大值
Math.min(数字1,数字2...) ---- 求最小值
Math.random() ----- 生成0-1之间的随机数 0可以取到 1不行
生成 a-b之间的随机整数 包含ab 的公式 Math.round(Math.random() * (b-a)) + a


console.log(Math.PI); // 3.141592653589793
// 假设圆的半径是 2 输出周长: 2*半径*Π
console.log( 2*2*Math.PI );
console.log( Math.floor(3.94) ); // 3
console.log( Math.ceil(3.14) ); // 4
console.log( Math.round(3.14) ); // 3
console.log( Math.round(3.94) ); // 4
// 绝对值: 4----4 -5 ----- 5
console.log( Math.abs(4) );
console.log( Math.abs(-5) );
// 最大值
console.log( Math.max(20,5,78,14) ); // 78
var arr1 = [20,5,78,14]
console.log( Math.max(...arr1) ); // ... 可以将数组中的数字都拿出来 max()只能放数字
console.log( Math.min(3,5) ); // 3
console.log( Math.min( ...arr1 ) ); // 5
console.log( Math.random() ); // [0,1) 0-1之间 可以取到0 不能取到1
// 生成 0-5之间的随机整数
console.log( Math.round( Math.random()*5 ) ); // [0,5]
// 生成 2-7之间的随机整数 包含2 包含7 0-5 + 2 = 2-7
console.log( Math.round(Math.random() * 5) + 2);
// 生成 a-b之间的随机整数 包含ab 公式 Math.round(Math.random() * (b-a) ) + a
 // 生成 3-16之间的随机整数
console.log( Math.round( Math.random()*(16-3) + 3) );


2.Date对象
Date 对象 : 用于处理时间和日期
是构造函数 必须先 new 再使用
var 变量 = new Date() ------- 获取的是此时此刻的日期和时间
var 变量 = new Date('年/月/日 时:分:秒')
年月日之间可以使用 / , -
年月日 ----- 年月日 时分秒 ----- 年月日 时分
日期对象的方法:
获取年 : 日期对象.getFullYear() ---- 输出4位的年
获取月 : 日期对象.getMonth() ---- 0-11 需要加一
获取日 : 日期对象.getDate()
获取周几 : 日期对象.getDay() 1-7之间的数字
获取小时 : 日期对象.getHours() 0-60
获取分钟 : 日期对象.getMinutes() 0-60
获取秒 : 日期对象.getSeconds() 0-60

3.日期对象案例--补零操作
// 在页面中输出时间 格式是 2023年09月08日 08:08:08
// 获取日期对象
 var a = new Date('2023/9/8 8:8:8')
console.log(a); // 显示的时候时完整的日期信息 并且是8 不是08
// 单独获取 年月日 时分秒
var year = a.getFullYear()
var month = a.getMonth()+1
var date = a.getDate()
var hh = a.getHours()
var mm = a.getMinutes()
var ss = a.getSeconds()
// 进行补零操作 重新赋值: 如果小于10,前边拼接上0  否则还是自己
month = month<10 ? '0'+month : month
date = date<10 ? '0'+date : date
hh = hh<10 ? '0'+hh : hh
mm = mm<10 ? '0'+mm : mm
ss = ss<10 ? '0'+ss : ss
document.write(`${year}年${month}月${date}日 ${hh}:${mm}:${ss} `)


4.时间戳
时间戳:距离1970年1月1日 的毫秒数 1秒 = 1000毫秒
获取时间戳几种办法:
日期对象.valueOf()
日期对象.getTime()
+日期对象

5.数组对象的删除和排序
1)数组的删除 
数组.splice(下标,个数) : 从指定下标开始,删除几个元素
var arr = [67, 4, 56, 3, 7]
// 删除下标为2 的元素
arr.splice(2, 1)
console.log(arr);

2)数组的排序
数组.sort(function(a,b){
            return a-b
})
return a-b 从小到大
return b-a 从大到小
var arr1 = [67, 4, 4, 56, 4, 3, 4, 7]
arr1.sort(function(a,b){
         return a-b
})
console.log(arr1);


6.String 对象
创建字符串的三种方式
// 1、字面量方式
var str1 = 'hello'
console.log( typeof str1); // string 使用字面量创建 ----简单的字符类型
// 2、 函数方式 String() ----- 构造函数(函数名首字母大写)
var str2 = String("hello")
console.log( typeof str2); // string ----简单的字符类型
// 3、使用new 关键字
var str3 = new String('hello')
console.log(typeof str3); // object ----- 是对象
// 注意: 不管哪种方式创建的字符串,可以直接当作对象使用 可以调用方法 访问属性
// 字符串的长度 字符串.length 是属性


1)根据字符返回下标
根据字符返回位置(下标)
字符串.indexOf('指定字符',开始位置):从前往后 返回第一次出现的下标,如果没有就是-1
字符串.lastIndexOf('指定字符',开始位置): 从后往前找 返回第一次出现的下标,如果没有就是-1
var str1 = '你好世界,你好世界'
console.log( str1.indexOf('你') ); // 1  第一个'你好世界'中的'你'的下标
console.log( str1.indexOf('欢') ); // -1
console.log( str1.indexOf('世',4) ); // 7
console.log( str1.lastIndexOf('世') ); // 7  第二个'你好世界'中的'世'的下标
2)根据下标返回字符
根据下标返回字符
字符串.charAt(下标):返回对应的字符
字符串.charCodeAt(下标): 返回的是字符对应的的ASCII码 0-65535
字符串[下标] : 返回对应的字符,但是有兼容性问题
var str1 = '你好世界,你好世界'
console.log( str1.charAt(0) ); // 你
console.log( str1.charCodeAt(0) );
console.log( 'abc'.charCodeAt(0) ); // 97
console.log( str1[3] ); // 界
3)其他方法
// 1、 字符串.concat(多个字符串) 将多个字符串拼接一起
// 2、 字符串.substr(开始下标,长度): 截取部分内容
// 3、字符串.slice(开始下标,结束下标): 截取部分内容,取不到结束下标
// 4、字符串.split('指定字符'):根据指定字符进行分割,得到的是数组
// 5、字符串.replace('旧字符','新字符'): 使用7旧字符替换新字符 ----- 只替换一次
// 6、字符串.replaceAll('旧字符','新字符'): 使用旧字符替换新字符 ----- 替换所有
// 字符串的所有方法都是得到一个结果 ---- 可以输出 可以使用变量接收

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

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

相关文章

web安全之XSS攻击原理及防范

XSS攻击原理 XSS&#xff08;Cross-Site Scripting&#xff0c;跨站脚本攻击&#xff09;是一种常见的网络攻击方式。攻击者通过在受害者的浏览器中注入恶意脚本&#xff0c;来实现对受害者的会话劫持、敏感信息窃取等非法目的。但是在实际的项目开发中&#xff0c;除了少数企…

RocketMQ Dashboard可视化工具

RocketMQ Dashboard 将 RocketMQ的相关指标展示在web页面 &#xff0c;支持以可视化工具代替 Topic 配置、Broker 管理等命令行操作。 官方文档地址&#xff1a;RocketMQ Dashboard | RocketMQ 目录 1.下载安装 1.1 系统要求&#xff1a; 1.2 源码安装 1.3 访问页面 2.功…

如何搭建开源知识库软件AFFiNE并实现公网环境远程协作【内网穿透】

目录 前言 1. 使用Docker安装AFFINE 2. 安装cpolar内网穿透工具 3. 配置AFFINE公网访问地址 4. 实现公网远程访问AFFINE 结语 作者简介&#xff1a; 懒大王敲代码&#xff0c;计算机专业应届生 今天给大家聊聊如何搭建开源知识库软件AFFiNE并实现公网环境远程协作【内网穿…

借势API电商数据采集汇总分析

电商数据采集的网页抓取数据、淘宝、天猫、京东等平台的电商数据抓取&#xff0c;网页爬虫、采集网站数据、网页数据采集软件、python爬虫、HTM网页提取、APP数据抓包、APP数据采集、一站式网站采集技术、BI数据的数据分析、数据标注等成为大数据发展中的热门技术关键词。那么电…

使用python读取yaml文件数据

使用python读取yaml文件&#xff1a; yaml文件数据&#xff1a;data.yaml login_data:url: http://www.baidu.comcase1:user1: password1: 12345errorText: 请输入用户名case2:user2: adminpassword2: errorText: 请输入密码case3:user3: adminpassword3: 123456errorText: 登…

ABAP CDS 笔记

文章目录 1.什么是abap cdsadap cds的优点 2.常用cds语法常用函数一 数值函数1.绝对值2. 最小整数不小于arg的值3.两个参数相除4.两个数相除切保留小数位5.最小整数不大于arg的值6.取除数的余数 二 字符串函数1.拼接字符2.替换字符3.截取字符串 三 常用的分支语句1.CASE 表达式…

19. 从零用Rust编写正反向代理, 配置数据的热更新原理及实现

wmproxy wmproxy是由Rust编写&#xff0c;已实现http/https代理&#xff0c;socks5代理&#xff0c; 反向代理&#xff0c;静态文件服务器&#xff0c;内网穿透&#xff0c;配置热更新等&#xff0c; 后续将实现websocket代理等&#xff0c;同时会将实现过程分享出来&#xff…

探索 Java 8 中的 Stream 流:构建流的多种方式

目录 前言 什么是 Stream 流&#xff1f; 创建 Stream 流 1. 从集合创建 Stream 2. 从数组创建 Stream 3. 使用 Stream.of 创建 Stream 4. 使用 Stream.generate 创建 Stream 5. 使用 Stream.iterate 创建 Stream Stream 流的操作 1. 过滤数据 2. 映射数据 …

01 ZigBee开发环境IAR搭建

链接&#xff1a;https://pan.baidu.com/s/18l8z9qajPBj2X5WzgjT0TA?pwd41qc 提取码&#xff1a;41qc 注意&#xff1a;安装包和注册机都要右击用管理员权限打开&#xff0c;安装过程中关闭杀毒软件&#xff08;否则后续程序不行&#xff09; 安装IAR-8051 以管理员身份运行E…

鸿蒙开发已解决-arkts编译报错-arkts-limited-stdlib错误

文章目录 项目场景:问题描述原因分析:解决方案:适配指导案例此Bug解决方案总结项目场景: arkts编译报错-arkts-limited-stdlib错误。 我用Deveco studio4.0 beta2开发应用,报arkts-limited-stdlib错误 报错内容为: ERROR: ArKTS:ERROR File: D:/prRevivw/3792lapplica…

行列式的计算

1、基本性质&#xff1a; 1&#xff09;行列式转置相等 2&#xff09;任意两行&#xff08;列&#xff09;成比例&#xff0c;行列式为0 3&#xff09;对换任意某两行&#xff08;列&#xff09;&#xff0c;行列式变号 4&#xff09;某一行&#xff08;列&#xff09;乘某…

Ubuntu下VsCode+CMake 交叉编译

参考连接&#xff1a; Ubuntu下VsCodeCMake 交叉编译 VSCode与CMake搭配使用之基本配置 VSCode与CMake搭配使用之交叉编译 step1: CtrlShiftp打开VSCode的指令面板&#xff0c;然后输入cmake:q ; 在窗口搜索&#xff1a;“ >CMake:Edit user-loacl CMake kits ”会打开一个…

SpringBoot集成阿里云短信实现发送短信验证码

SpringBoot集成阿里云短信实现发送短信验证码 一、准备工作1、注册账号2、申请资质3、申请签名4、创建模板 二、springboot集成发送短信1、引入依赖2、编写短信配置文件3、编写短信发送工具类 一、准备工作 在使用springboot集成短信服务之前&#xff0c;需要先注册阿里云的账…

VMware vSphere运维管理手册

适用版本:VMware vSphere 7.0 VMware vSphere 是 VMware 的虚拟化平台,可将数据中心转换为包括 CPU、存储和网络资源的聚合计算基础架构。vSphere 将这些基础架构作为一个统一的运行环境进行管理,并为您提供工具来管理加入该环境的数据中心。 ![[Pasted image 20231212132…

uni-app的学习【第二节】

四 路由配置及页面跳转 (1)路由配置 uni-app页面路由全部交给框架统一管理,需要在pages.json里配置每个路由页面的路径以及页面样式(类似小程序在app.json中配置页面路由) (2)路由跳转 uni-app有两种页面路由跳转方式:使用navigator组件跳转(标签式导航)、调用API跳…

使用Markdown编辑器

使用Markdown编辑器 本Markdown编辑器使用[StackEdit][6]修改而来&#xff0c;用它写博客&#xff0c;将会带来全新的体验哦&#xff1a; Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的…

比亚迪:从低谷中涅槃,内功造就辉煌

修炼内功才能绽放光芒吗? 比亚迪用自己的奋斗史证明~ 只有经历低谷的洗礼&#xff0c;才能铸就属于自己的辉煌。 比亚迪这家公司的发展历程可谓是一部从战略转型到今天这个行业翘楚的奋斗史&#xff0c;真是跌宕起伏令人唏嘘。早期比亚迪从一个传统企业转型到汽车行业&#xf…

git第一次提交代码到仓库(初始化提交)

要将代码提交到仓库&#xff0c;首先需要初始化一个git仓库。以下是在本地初始化一个新的git仓库的步骤&#xff1a; 打开命令行工具&#xff0c;进入到要初始化git仓库的目录下。 使用以下命令初始化git仓库&#xff1a; git init这将在当前目录下创建一个.git的隐藏文件夹&a…

电源模块常见温升测试方法分享 -纳米软件

温升测试是电器产品安规测试项目之一&#xff0c;是为了检测电器产品及部件的温度变化情况&#xff0c;判断是否符合要求。在设备运行过程中会释放一定的热量&#xff0c;如果内部温度过高会影响产品的性能和稳定性&#xff0c;导致绝缘性能下降&#xff0c;因此温升测试是确保…

ubuntu18.04安装部署环境

部署项目 云服务器放开端口&#xff0c;虚拟机关闭防火墙 # 防火墙状态&#xff0c;如果输出显示 Status: inactive&#xff0c;表示 UFW 处于禁用状态 sudo ufw status# 关闭防火墙 sudo ufw disable# 启动防火墙 sudo ufw enable# 设置防火墙默认策略的命令&#xff0c;将所…