工作总结(一)

重要纪录一些事情上碰到的题目,不定期跟新

1、由于事情调接口,后端返回字段常常变化,本日碰到如许一个题目。

// 推断返回 arr ,假如是 null 或 [] 空数组就显现''
// 假定返回字段是 usersName
// 初始主意,经由过程if语句,举行推断,确认返回值。
var userName = [];
var str = '';
if (userName) {//空数组为true
    alert(123);
    str = userName.join();
}
// 如许能够实现需求,然则遽然想到一个细节,这个要领只能推断null为false,然则推断userName 空数组则为ture。
// 假如不是简朴的实行join()要领,逻辑上肯定会报错。其道理是由于,null是对象空指针,布尔值为false
// 而[]空数组是一个数组对象,布尔值为ture,所以会实行if里边的语句。

2、JS对象不能够直接挪用JQ要领

<!-- 运用JQ要领时,注重将DOM对象转换为JQ对象 -->
<!-- 比方,运用jQ推断点击对象是不是包括某一属性值。-->

<span class="cs cs-one" onclick="edit(this)">点击我</span>
<script>
    function edit(obj) {
        // 会报错
        if ( obj.hasClass('cs-one') ) {  
            alert('ok');
        }
    }
</script>
<!-- 实行语句会报错,hasClass not function。 -->
<!-- 由于hasClass是JQ要领,而经由过程jS的DOM对象挪用要领就会报错。 -->
<!-- 须要将JS对象转成JQ对象 $(obj) -->
<script>
    function edit(obj) {
        // 准确
        if ( $(obj).hasClass('cs-one') ) {
            alert('ok');
        }
    }
</script>
<!-- 题目:JS对象能够直接挪用JQ要领吗? -->

3、怎样猎取href链接中字符对应的值

var id = GetArgsFromHref(href,"id");//猎取id
function GetArgsFromHref(sHref, sArgName){
    var args = sHref.split("?");//将链接切分红数组
    var retval = "";//须要返回的字符串
  
    if(args[0] == sHref){//参数为空
         return retval;//返回空字符串,无需做任何处置惩罚
    }  
    var str = args[1];//猎取?后边字符串
    args = str.split("&");//将字符串以&切分红数组
    for(var i = 0; i < args.length; i ++){//遍历切分后的数组
        str = args[i];
        var arg = str.split("=");//切分数组中的字符串
        if(arg.length <= 1) continue;//没有=后边的值跳过
        if(arg[0] == sArgName) retval = arg[1];//猎取到对应的值
    }
    return retval;//返回对应的值
}
    原文作者:李佳臣
    原文地址: https://segmentfault.com/a/1190000018480133
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞