美文网首页
js小知识2

js小知识2

作者: 晓箬 | 来源:发表于2017-10-22 13:53 被阅读0次

    一、字符串常用方法

        str.charAt()        在字符串中查找某一位置的字符
        str.indexOf()       在字符串中查找字符首次出现的位置
            如果找不到,返回-1
        str.lastIndexOf()   在字符串中查找字符最后出现的位置
            如果找不到,返回-1
        str.substring()     截取字符串
            str.substring(start,end)    不包括end
            简写
            str.substring(start)        从start截取到最后
        str.split()         拆分字符串-》数组
        str.toUpperCase()   字符串小写字母-》大写字母
        str.toLowerCase()   字符串大写字母-》小写字母
    
            检测浏览器版本信息
                window.navigator.userAgent
    

    二、数组常用方法

        arr.push();             在数组后面添加
        arr.pop();              在数组后面删除
        arr.unshift();          在数组前面添加
        arr.shift();            在数组前面删除
            删除会把删掉的东西返回。
    
        arr.splice();           删除,添加,替换
            arr.splice(start,length);       删除
            arr.splice(start,0,item1,item2,item3....)   添加
            arr.splice(start,length,item1,item2...)     替换
    
        arr.join();             合并数组-》字符串
        arr.reverse();          反转
        arr.concat();           拼接数组
        arr.sort();             数组排序
            深入sort
            arr.sort(function(iNum1,iNum2){
                return iNum1-iNum2;         从小到大
                return iNum2-iNum1;         从大到小
            });
    

    三、Math常用方法

        Math.random();          获取0-1的随机小数,不包括1
        Math.floor();           向下取整
        Math.ceil();            向上取整
        Math.round();           四舍五入
    
        Math.sqrt();            开方
        Math.pow();             幂       n次方
        Math.abs();             绝对值
        Math.max();             取最大值
        Math.min();             取最小值
    

    四、JSON

        var arr = ['apple','lucy','banana','eric'];
        var json = {'name':'eric','age':18,'gender':'男'};
            key:value           键值对
    
    数组和json的区别
                数组                  json
    结构      ['as','bb']             {key:value,key:value}   键值对
    访问内容    下标                  key
    length      有                       无
    循环      for                     for...in
    
    for...in
        for(var key in json){
            key             键
            json[key]       值
        }
    
        可以操作json也可以操作数组。
        平时只用来操作json。
    
    for...in    性能比for循环差。
    

    五、i的问题,执行时机

    循环中加事件,事件中使用i
        循环中加定时器,定时器中使用i
    
        解决:
            1.自定义属性
            2.封闭空间
    
    function(){}()      报错,官方不允许
        解决:
            (function(index){
    
            })(i);
    
    封闭空间
        (function(){
    
        })();
        作用:
            1.解决i的问题
            2.解决变量名冲突问题
    

    六、作用域

    
        起作用的范围
        全局
            外面没有任何函数包裹
            在任何地方都可以使用
        局部
            只能在声明他的函数内使用
        闭包
            子函数可以使用父函数的局部变量
    

    七、表达式,预解析

    js语言特性:
        不加var声明变量,是全局的
        window的就是全局的
        等号表达式
            var a = b = c = 12;
            除了a是局部的,剩下的都是全局的
        逗号表达式
            听逗号后面的
            a = (12,5);
            alert((12,5));
    
            var name = 'eric',
                age = 18,
                gender = '男';
    
        预解析
            在js执行之前,会把所有声明提到顶部
            不会突破作用域
            读取一个script标签,预解析,执行代码-》读取下一个script标签,预解析,执行代码-》读取下一个
    

    相关文章

      网友评论

          本文标题:js小知识2

          本文链接:https://www.haomeiwen.com/subject/uevguxtx.html