js常见问题

js常见问题

1.滚动加载

    function onScroll() {
        if (this.curPage > this.totalPage) return;
        var scrollTop = document.body.scrollTop || document.documentElement.scrollTop;
        var scrollHeight = document.documentElement.scrollHeight || document.body.scrollHeight;
        var windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
        if (scrollTop + windowHeight > scrollHeight - 100) {
            // flagData防止触发多次
            if (!this.flagData) return;
            this.flagData = false;
            this.getSingerList();//请求数据成功后 page+1, this.flagData = true;
        }
    }

2.获取特定对象的值,key忽略大小写

let options={
    shareUserId:123,
}
// let shareUserId=options.shareUserid||options.shareUserId||options.shareUserID;

for (let item in options){
    if(item.toLowerCase()=='shareuserid'){
        let shareUserId=options[item];
        console.log(shareUserId);//123
    }
}

3. 获取地址中的参数值

function getUrlParam(name, url) {
  if (!url) url = location.href;
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regexS = "[\\?&]" + name + "=([^&#]*)";
  var regex = new RegExp(regexS);
  var results = regex.exec(url);
  return results == null ? null : results[1];
}

4.格式化时间

/**
 * 格式化时间
 * @ date 时间参数,传入字符串
 * @ fmt 时间显示格式,‘yyyy-MM-dd hh:mm:ss’
 */
function formatDate(time, fmt) {
    if(!time) return '';
    var date = new Date(time);
    var o = {
        'y+': date.getFullYear(),
        'M+': date.getMonth() + 1,
        'd+': date.getDate(),
        'h+': date.getHours(),
        'm+': date.getMinutes(),
        's+': date.getSeconds()
    };
    for (var k in o) {
        if (new RegExp('(' + k + ')').test(fmt)) {
            var str = o[k] + '';
            fmt = fmt.replace(RegExp.$1, (str.length === 1) ? ('0' + str) : str);
        }
    };
    return fmt;
}

5.版本号比较

function versionCompare(curV, reqV) {
        var arr1 = curV.split('.');
        var arr2 = reqV.split('.');
        //将两个版本号拆成数字 
        var maxL = Math.max(arr1.length, arr2.length);
        var pos = 0; //当前比较位
        var diff = 0; //当前为位比较是否相等
        //逐个比较如果当前位相等则继续比较下一位
        while (pos < maxL) {
            diff = parseInt(arr1[pos]||0) - parseInt(arr2[pos]||0);
            if (diff != 0) break;
            pos++;
        }
        if (diff >= 0) {
            return true;
        } else {
            return false;
        }
    }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101129.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • UVa – The 3n + 1 problem 解读

    UVa – The 3n + 1 problem 解读

  • 如何成为年薪50W的运维架构师?

    如何成为年薪50W的运维架构师?linux云计算工程师三大核心职能平台架构组建负责服务的搭建日常运营保障保证运维工作正常运转出现问题解决性能、效率优化运维工作效率的优化,devops运维自动化提升系统的性能90%服务器都是LinuxLinux免费(windows是付费的,我们用的都是盗版)Linux平台稳定Linux开源过程开发工程师(开发,bug修复,码农)—&gt;…

  • javascript百炼成仙 第一章 掌握JavaScript基础 1.2直接量

    javascript百炼成仙 第一章 掌握JavaScript基础 1.2直接量叶小凡的住处被安排在青山院西北角的一个房间里,虽不宽敞,倒也干净。叶小凡两眼露出振奋的眼神,随便吃了点乡亲们准备的干粮后,就立刻开始打坐修行。编程之修,重在积累,而非资质。资质虽然一样重要,可是后天的努力一样必不可少。这些道理,叶小凡还未上山之前,就已经熟知!因此,即便是资质平凡,只要肯下苦功,一样可以修得正果!叶小凡虽然甲等资质,可依然不骄不躁,开始从“JavaScript基础修炼要诀”第一页开始看起。修炼要诀第一章,直接量。编程世界,所谓直接量,就是明面上可以见到的数据值。常见的直接量有数字,小数,

  • WebStorm提示代码快捷键[通俗易懂]

    WebStorm提示代码快捷键[通俗易懂]刚开始用WebStorm,发现默认的提示功能Ctrl+space代码提示无效,修改为Alt+/。File—>Settings(Ctrl+Alt+s)—>Keymap添加快捷键时(这里以Alt+斜杠为例),直接按住Alt和斜杠键即可(不是手打字符上去的)。在需要提示的位置Alt+/ 就会出现提示代码。群中更多更全,加群获取下载。…

  • Vim详细配置_mini5配置

    Vim详细配置_mini5配置Vim配置要点一、在终端中开打.vimrc文档二、在.vimrc文档中添加配置内容1.常用设置2.自动备份3.自动补全三、保存退出四、代码高亮不显示一、在终端中开打.vimrc文档vi~/.vimrc二、在.vimrc文档中添加配置内容1.常用设置setnumber “显示行号syntaxon “语法高亮度显示setautoindent “vim使用自动对起,也就是把当前行的对起格式应用到下一行setsmartindent “依据上面的对起格式,智能的

  • 加密connectionStrings

    加密connectionStrings开始菜单>>所有程序>>Microsoftvisualstudio2010>>VisualStudioTools>>VisualStudio命令提示(2010)(如果是windows7,点右键与管理员身份运行)输入aspnet_regiis.exe-pef”connectionStrings””发布后的web.conf…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号