作用域-Number和String的常用Api(方法)

什么是作用域?

作用域:变量起作用的一个范围 因为每个变量 都有自已对应的生活环境
全局作用域:被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); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值