ES6 第一讲 变量定义 堆与栈 字符串的扩展和数值型的扩展

文章目录

  • 1.ES6变量定义
  • 2.ES6堆和栈
  • 3.字符串的扩展
    • 3.1 模板字符串
    • 3.2 判断是否以指定的字符串开头或结尾
    • 3.3 字符串重复输出
    • 3.4 填充方法
    • 3.5 去除前后字符串空格
    • 3.6 返回参数指定位置的字符
  • 4. 数值型的扩展
    • 4.1 二进制0B 八进制0O
    • 4.2 判断是否是一个无穷大的数字 (判断是否为数值型)
    • 4.3 判断是否为一个 NaN(not a number)
    • 4.4 转换成数值型和浮点型
    • 4.5 判断是否是整数
    • 4.6 js中最大能处理的数字范围和最小能处理的范围及判断数值是否在安全范围内

1.ES6变量定义

新的变量定义关键字

变量提升
当前变量的定义部分会提升到当前作用域的最顶端
注意是定义部分,不是赋值

函数提升,会将当前函数定义部分提升到但钱作用域的最顶端

let 与const
let是变量,不能重定义,没有变量提升

let会生成块级作用域,如果在{}内使用let定义变量就会在当前作用域

  {var a=10;}console.log(a);  //不会报错{let a=10;}console.log(a);  //会报错

2.ES6堆和栈

栈内存,相当于键值对,存储容量比较小
堆内容,存储容量比较大,像数组和对象

3.字符串的扩展

3.1 模板字符串

引入模板字符串前,用js插入标签,不能换行,担心单引号,双引号

 oBox.innerHTML = "<ul><li class='list-item'>"+ num +"</li><li>b</li><li>c</li></ul>";

引入模板字符串后

  //模版字符串 内部不区分单引号双引号 支持换行 使用变量${}oBox.innerHTML = `<ul class="ul-style" ><li class='li-style'>${num}</li></ul>`

变量用${} ,最外边用``把代码扩上

3.2 判断是否以指定的字符串开头或结尾

 var str = "hello world";var str2 = "ab"
// console.log(str.includes("w"));
// 判断当前字符串是否以制定的字母开头
// console.log(str.startsWith("he"));// 判断当前字符串是否以制定的字母结尾
// console.log(str.endsWith("rld"));

3.3 字符串重复输出

字符串.repeat()

console.log(str2.repeat(3));

3.4 填充方法

字符串.padStart(,)
字符串.padEndt(,)

 // 填充方法,向前填充 接收两个参数第一个代表填充长度(包含原有字符串长度),第二个参数以制定的字符进行填充console.log(str2.padStart(10,"xy"));
// 填充方法,向后填充 接收两个参数第一个代表填充长度(包含原有字符串长度),第二个参数以制定的字符进行填充console.log(str2.padEnd(10,"xy"));

3.5 去除前后字符串空格

 var str = "abc"去除字符串空格console.log(str.trim());   //去除前后字符串空格console.log(str.trimEnd()); //去除后面字符串空格console.log(str.trimStart()); //去除前面字符串空格

3.6 返回参数指定位置的字符

var n = str.charAt(1);
console.log(n);

4. 数值型的扩展

4.1 二进制0B 八进制0O

// 二进制 表示形式
let num1 = 0B101;
// 八进制
let num2 = 0O70;
// 十六进制
let num3 = 0Xfff;

4.2 判断是否是一个无穷大的数字 (判断是否为数值型)

// 判断是否是一个无穷大的数字 (判断是否为数值型)
console.log(Number.isFinite(str));
console.log(Number.isFinite(10/0));

4.3 判断是否为一个 NaN(not a number)

// 判断是否为一个 NaN(not a number)
console.log(Number.isNaN(3*"a"));
console.log(Number.isNaN(num));

4.4 转换成数值型和浮点型

windows对象下虽然有parseInt方法,但是所有的方法都让windows对象处理,是不科学的

// 转换成整型
console.log(Number.parseInt(str1));
// 转换成浮点型 带有小数的
console.log(Number.parseFloat(str1));

4.5 判断是否是整数

// 判断是否为整数
console.log(Number.isInteger(num));
console.log(Number.isInteger(num2));

4.6 js中最大能处理的数字范围和最小能处理的范围及判断数值是否在安全范围内

//js当中最大能处理的数字范围
console.log(Number.MAX_SAFE_INTEGER);//Math.pow(2,53)-1
// js当中最小能处理的数字范围
console.log(Number.MIN_SAFE_INTEGER);//Math.pow(2,53)+1
// 判断数值是否在安全范围内
console.log(Number.isSafeInteger(Number.MAX_SAFE_INTEGER+1));

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

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

相关文章

LeetCode第158题_用Read4读取N个字符 II

LeetCode 第158题&#xff1a;用Read4读取N个字符 II 题目描述 给你一个文件&#xff0c;并且该文件只能通过给定的 read4 方法来读取&#xff0c;请实现一个方法来读取 n 个字符。 read4 方法&#xff1a; API read4 可以从文件中读取 4 个连续的字符&#xff0c;并且将它…

算法篇之单调栈

单调栈算法入门 单调栈是一种特殊的数据结构应用&#xff0c;它的核心在于维护一个栈&#xff0c;使得栈内元素保持单调递增或者单调递减的顺序。这种数据结构在解决很多算法问题时非常有效&#xff0c;例如求数组中每个元素的下一个更大元素、每日温度问题等。 一、单调栈的…

Kubernetes控制平面组件:调度器Scheduler(二)

云原生学习路线导航页&#xff08;持续更新中&#xff09; kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计&#xff08;一&#xff09;Kubernetes架构原则和对象设计&#xff08;二&#xff09;Kubernetes架构原则和对象设计&#xff08;三&#xff09;Kubernetes控…

【网络】数据链路层知识梳理

全是通俗易懂的讲解&#xff0c;如果你本节之前的知识都掌握清楚&#xff0c;那就速速来看我的笔记吧~ 自己写自己的八股&#xff01;让未来的自己看懂&#xff01; &#xff08;全文手敲&#xff0c;受益良多&#xff09; 数据链路层 我们来重新理解一下这个图&#xff1a;…

机器学习(神经网络基础篇)——个人理解篇6(概念+代码)

1 在声明一个类中&#xff0c;构建一个属于类的函数&#xff0c;前面为什要加上“self”&#xff1f; 就像下面这一串代码&#xff1a; class TwoLayerNet:def __init__(self, input_size, hidden_size, output_size,weight_init_std0.01):# 初始化权重self.params {}self.p…

Cribl 对Windows-xml log 进行 -Removing filed-06

Removing Fields Description​ The Eval Function can be used to add or remove fields. In this example we will remove the extracted fields while preserving _raw, _time,index,source, sourcetype. Steps - Adding an Eval Function

chili3d调试6 添加左侧面板

注释前 一个一个注释看对应哪个窗口 无事发生 子方法不是显示的窗口 注释掉看看 没了 注释这个看看 零件页面没了 这个浏览器居然完全不用关的&#xff0c;刷新就重载了 注释看看 无工具栏版本 sidebar&#xff1a; 往框框里面加入 div({ className: style.input }, user_…

Linux学习——了解和熟悉Linux系统的远程终端登录

Linux学习——了解和熟悉Linux系统的远程终端登录 一.配置Ubuntu系统的网络和用户 1、设置虚拟机网络为桥接模式 打开VMWare&#xff0c;选择编辑虚拟机设置&#xff0c;在网络适配器设置中&#xff0c;选择“桥接模式”&#xff0c;保存设置并启动Ubuntu。 2、配置Ubuntu的…

【JAVA EE初阶】多线程(1)

这样的代码&#xff0c;虽然也能打印hello thread&#xff0c;但是没有创建新的线程&#xff0c;而是直接在main方法所在的主线程中执行了run的逻辑 start方法&#xff0c;是调用系统api&#xff0c;真正在操作系统内部创建一个线程。这个新的线程会以run作为入口方法&#xff…

javase 学习

一、Java 三大版本 javaSE 标准版 &#xff08;桌面程序&#xff1b; 控制台开发&#xff09; javaME 嵌入式开发&#xff08;手机、小家电&#xff09;基本不用&#xff0c;已经淘汰了 javaEE E业级发开&#xff08;web端、 服务器开发&#xff09; 二、Jdk ,jre jvm 三…

【Linux】Linux 操作系统 - 05 , 软件包管理器和 vim 编辑器的使用 !

文章目录 前言一、软件包管理器1 . 软件安装2 . 包管理器3 . Linux 生态 二、软件安装 、卸载三、vim 的使用1 . 什么是 vim ?2 . vim 多模式3 . 命令模式 - 命令4 . 底行模式 - 命令5. 插入模式6 . 替换模式7 . V-BLOCK 模式8 . 技巧补充 总结 前言 本篇笔者将会对软件包管理…

python基础知识点(1)

python语句 一行写一条语句 一行内写多行语句&#xff0c;使用分号分隔建议每行写一句&#xff0c;且结束时不写分号写在[ ]、{ }内的跨行语句&#xff0c;被视为一行语句\ 是续行符,实现分行书写功能 反斜杠表示下一行和本行是同一行 代码块与缩进 代码块复合语句&#xf…

C#/.NET/.NET Core技术前沿周刊 | 第 35 期(2025年4.14-4.20)

前言 C#/.NET/.NET Core技术前沿周刊&#xff0c;你的每周技术指南针&#xff01;记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿&#xff0c;助力技术成长与视野拓宽。 欢迎投稿、推荐…

HTML表单与数据验证设计

HTML 表单与数据验证设计&#xff1a;构建可靠的用户数据采集系统 引言 互联网的核心是数据交互&#xff0c;而HTML表单是这一交互的主要入口。作为前端工程师&#xff0c;设计高质量的表单不仅关乎用户体验&#xff0c;更直接影响数据收集的准确性和系统安全。 在我的学习实…

基于STM32的Keil环境搭建与点灯

本人使用的STM32开发板为正点原子的STM32F103ZE&#xff0c;在此记录完整的搭建与点灯过程。 一、Keil的安装与配置 安装Keil 首先进入Keil下载官网&#xff1a;https://www.keil.com/download/product/ 点击MDK-ARM&#xff0c;并填写相关信息&#xff0c;之后开始下载最新版…

React-useRef

如果我们想在hooks里面获同步取最新的值&#xff0c;那么则可以使用useRef, 关键源码如下&#xff1a; function mountRef<T>(initialValue: T): {|current: T|} {const hook mountWorkInProgressHook();const ref {current: initialValue};hook.memoizedState ref;re…

幽灵依赖与常见依赖管理

文章目录 前言1. 演示&#xff1a;检测和修复幽灵依赖步骤1&#xff1a;安装 depcheck步骤2&#xff1a;在项目根目录运行 depcheck可能的输出步骤3&#xff1a;修复幽灵依赖 2. 依赖管理的好习惯 1. 场景设定现在有如下依赖需求&#xff1a; 2. 依赖冲突的表现3. 解决依赖冲突…

如何使用人工智能大模型,免费快速写工作总结?

如何使用人工智能大模型&#xff0c;免费快速写工作总结&#xff1f; 详细学习视频https://edu.csdn.net/learn/40406/666581

[Java实战经验]异常处理最佳实践

一些好的异常处理实践。 目录 异常设计自定义异常为异常设计错误代码&#xff08;状态码&#xff09;设计粒度全局异常处理异常日志信息保留 异常处理时机资源管理try-with-resources异常中的事务 异常设计 自定义异常 自定义异常设计&#xff0c;如业务异常定义BusinessExce…

Makefile 入门指南

Makefile 入门指南 最简单的例子 单文件编译 假设我们有一个main.cpp文件&#xff0c;最简单的Makefile如下&#xff1a; # 最简单的单文件编译 # 目标:依赖文件 main: main.cpp# 编译命令g main.cpp -o main使用步骤&#xff1a; 将上述内容保存为名为Makefile的文件&…