zoukankan      html  css  js  c++  java
  • JS 中的有用的表达式(一)

        bz = 'ie';
        
    var hz={
            tradition:
    "tradition-value",
            ie:
    "ie-value"
        }[bz
    ||"tradition"]||"control";
    看看上面的表达式,最后的结果是什么呢?
    其实,这个表达式看上去很奇怪,其实非常有用。很多时候,你要判断一个元素是否属于某个集合,一般先定义
    var set = ["a", "b", "c"];
    然后写个函数,inArray,判断是否在这个数组里面。现在你不需要这样了,就像上面一样,先建立一个对象
    {
            tradition:
    "tradition",
            ie:
    "ie"
    }
    然后用数组下标的方式取对象的值
    obj["ie"]
    那么,取到的值是ie-value
    如果取不到,就返回一个 null

    懂得这一点,上面的表达式的意义就明白了:
    如果bz 设置了,那么 下标就是 bz的值,如果bz 没有设置,下标就是默认的 tradition
    如果bz 的值是 tradition 或者 ie 那么hz就返回 tradition-value  或者 ie-value
    否hz返回 control
    希望大家用的开心。


    评论里面,有人说这个不是很明白,我前面说了太多的废话,下面补充一下:


    实际上,这个表达式可以分成很多步:

    第一个步:

    obj = {tradition:"tradition-value",ie:"ie-value"};

    第二步:

    key = bz ? bz : "tradition";

    第三步

    hz = obj[key] ? obj[key] : "control";

    这下应该要懂了吧、、、、、
  • 相关阅读:
    SpringIOC的小例子
    java中递归实现复制多级文件夹
    快速排序和几种简单排序
    Oracle面试的基本题
    多态的两个小例子
    单例模式
    内部类与匿名内部类
    C#
    C#
    C#
  • 原文地址:https://www.cnblogs.com/niniwzw/p/1554147.html
Copyright © 2011-2022 走看看