当前位置:网站首页>作用域-Number和String的常用Api(方法)
作用域-Number和String的常用Api(方法)
2022-06-27 17:34:00 【编程奥特曼.】
什么是作用域?
作用域:变量起作用的一个范围 因为每个变量 都有自已对应的生活环境
全局作用域:被script包裹的都可以称为是全局作用域
函数作用域
每个函数 都会生成一个独立的函数作用域
函数作用域内声明的变量 只能在当前函数作用域内使用 在别的作用域访问不到
函数作用域内的函数作用域 属于包含关系 里面的作用域可以访问外面的作用域 但是外面无法访问里面的作用域
同理 全局也无法访问函数作用域 函数作用域可以访问全局
块作用域 认{ } 为域
不存在交集的作用域之间 不能互相访问
// 全局作用域
let a = 1
function zhuque(){
console.log(a);
}
zhuque()
// 函数作用域
function zhuque(){
let a = 123
console.log(a);
}
zhuque()
// 块作用域
if(true){
}
函数作用域内声明的变量,只能在当前函数作用域内使用,在别的作用域内访问不到
function zhuque(){
let a = 123 //声明在 函数作用域
// console.log(b); //爸爸管儿子要,是要不到的
function zhu1(){
console.log(a); //123
// let b = 456
}
zhu1()
console.log(a); //123
}
zhuque()
//不存在交集的作用域之间 不能互相访问
不存在交集的作用域之间 不能互相访问
function zhuque(){
let a = 0
function zhu1(){
let b = 456
}
zhu1()
}
zhuque();
function fn(){
console.log(a);
}
fn()
// 不能把变量返回出去
function zhuque(){
let a = 0
return a
}
let num = zhuque();
console.log(num);
function fn(){
console.log(a);
}
fn()
当我们处于某一作用域里,需要使用变量时,先从自身作用域内查找该变量
如果没有,就往外层作用域查询 外层作用域也没有的话,一直往外层找,直到找到全局作用域
如果全局也没有变量的话,就会报错
let a = 1
function fn(){
let a = 2
console.log(a); //2
{
console.log(a); //2
}
}
fn()
console.log(a); //1
let fn2 = function(){
{
console.log(a); //1
}
}
fn2()
无论什么作用域内 只要没有声明 就直接赋值的 都会成为 window的属性
b = 1
window.b = 1
Number的方法(api)
parseInt():保留整数
parseFloat():保留浮点数
Number.isNaN():判断是不是NaN (返回布尔值)
Number.isFinte():判断是不是有限数字 (返回布尔值)
Number.isInteger():判断是否是整数,(返回布尔值)
toFixed():保留几位小数
1.返回整数,(Number可以省略)
let num = 3.12344
console.log(Number.parseInt(num));//3
console.log(parseInt(num));
1.字符串转数字,非数字部分砍掉
let num = "123px"
console.log(parseInt(num)); //123
console.log(parseInt("a23b")); //NaN
2.返回浮点数,(Number可以省略)
let num = 3.1548
let num1 = "123.12px"
console.log(Number.parseFloat(num));// 3.1548
console.log(parseFloat(num1));
3.判断一个值是否是NaN,返回布尔值
let num = NaN
if(Number.isNaN(num)){
console.log(1);
}
if(Number.isNaN("abc" - 1)){
console.log(1);
}
4.判断是否是有限数字,(可以省略Number)
let num = 123
console.log(Number.isFinite(num)); //true
5.判断是否是整数,返回布尔值(不可以省略Number)
let num = 3.1548
let num2 = 123
console.log(Number.isInteger(num));//false
console.log(Number.isInteger(num2));//true
6.toFixed() 保留几位小数
let num = 3.12344
console.log(num.toFixed(2)); //3.12
console.log(+Number(3.1525).toFixed(3));
字符串的常用API
1.charAt():获取某一字符串项 参数传序号,取字符串对应序号的字符
let str = "zhuque520"
console.log(str.charAt(2));//u
console.log(str.charAt(str.length-1));//0
2.charCodeAt():取字符串对应序号的unicode编码
let str = "zhuque520"
console.log(str.charCodeAt(str.length-1));//48
console.log(str.charCodeAt(0));//122 返回字符串的unicode编码值
3.String.formCharcode(),通过uniclde排序值,返回对应的字符
console.log(String.fromCharCode(122)); //z
4.substring(strNum,endNum) 截取字符串 从startNum 截取到endNum (左闭右开)
返回截取成功的新的字符串
let str = "zhuque520"
console.log(str.substring(0,3));//zhu
5.slice和substring用法一样的(都是左闭右开)
let str = "zhuque520"
console.log(str.slice(0,3));//zhu
6.*substr:截取字符串,按照长度截取
let str = "zhuque520"
console.log(str.slice(0,3));//zhu
7.*trim()清除左右两侧空格,中间不管
let str = " 用户群体 "
console.log(str.trim());
8.replace(str,req)替换字符串,只会替换第一个检索到的字符串项
let str = "zhuque520"
console.log(str.replace("zhuque","姚哥"));
9.split() 把字符串切割成数组,接受参数,为切割点(按什么去切割)
let str = "12345"
// let arr = str.split() //['12345']
// let arr = str.split(" ") //按照空格 ['12345']
// let arr = str.split("")//按照空字符 ['1', '2', '3', '4', '5']
let arr = str.split("3") //['12', '45']
console.log(arr);
边栏推荐
- 一种朴素的消失点计算方法
- 网上期货开户安全么?
- Teach you how to install Oracle 19C on Windows 10 (detailed picture and text with step on pit Guide)
- Market status and development prospect forecast of global handheld ventilator industry in 2022
- CDGA|交通行业做好数字化转型的核心是什么?
- New Zhongda chongci scientific and Technological Innovation Board: annual revenue of 284million and proposed fund-raising of 557million
- 国信证券是国企吗?在国信证券开户资金安全吗?
- Stored procedures of PostgreSQL
- Is Guosen Securities a state-owned enterprise? Is it safe to open an account with Guosen Securities?
- PCB线路板蛇形布线要注意哪些问题?
猜你喜欢

Buzzer experiment based on stm32f103zet6 library function

清华徐勇、段文晖研究组开发出高效精确的第一性原理电子结构深度学习方法与程序

DFS and BFS simple principle

Keras deep learning practice (12) -- facial feature point detection

Teach you how to install Oracle 19C on Windows 10 (detailed picture and text with step on pit Guide)

Camera calibration with OpenCV

什么是SSR/SSG/ISR?如何在AWS上托管它们?

Don't worry. This is the truth about wages in all industries in China

数据分析师太火?月入3W?用数据告诉你这个行业的真实情况

Exporting coordinates of points in TXT format in ArcGIS
随机推荐
Buzzer experiment based on stm32f103zet6 library function
Solution to Maxwell error (MySQL 8.x connection)
让单测变得如此简单 -- spock 框架初体验
Garbage collector driving everything -- G1
Usage of rxjs mergemap
im即时通讯开发之双进程守护保活实践
明美新能源冲刺深交所:年应收账款超6亿 拟募资4.5亿
Erreur Keil de Huada Single Chip Computer La solution de Weak
DFS and BFS simple principle
工作流自动化 低代码是关键
云笔记到底哪家强 -- 教你搭建自己的网盘服务器
Differences between mongodb and MySQL
Don't worry. This is the truth about wages in all industries in China
Cloud native database: the outlet of the database, you can also take off
原创 | 2025实现“5个1”奋斗目标!解放动力全系自主非道路国四产品正式发布
如何封裝調用一個庫
Substrate及波卡一周技术更新速递 20220425 - 20220501
Bit.Store:熊市漫漫,稳定Staking产品或成主旋律
Market status and development prospect forecast of global handheld ventilator industry in 2022
Cucumber自动化测试框架使用