概述
什么是作用域?
作用域:变量起作用的一个范围 因为每个变量 都有自已对应的生活环境
全局作用域:被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);
最后
以上就是自然秀发为你收集整理的作用域-Number和String的常用Api(方法)字符串的常用API的全部内容,希望文章能够帮你解决作用域-Number和String的常用Api(方法)字符串的常用API所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复