代码的套路简单点

2018-11-06  本文已影响0人  FredericaJ
//vue项目
<temlate>
<div class="father">
  <div class="brother">{{content}}</div>
  <textarea class="textSelf" v-model="content"></textarea>
</div>
</template>
....
<style>
.father {
  position: relative;
  display: block;
  width: 100%;
  font-size:14px;
  line-height:16px;
  font-family:inherit;
   .brother,,textSelf{
     padding:10px 15px;
   }
  .brother {
    position: relative;
    z-index: -1;
    opacity: 0;
    display: block;
    width: 100%;
  }
  .textSelf {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    overflow: hidden;
    border:none;
    outline:none;
  }
}
</style>
const addZero1 = (num, len = 2) => (`0${num}`).slice(-len)
const addZero2 = (num, len = 2) => (`${num}`).padStart(len, '0')
addZero1(3) // 03
addZero2(32,4)  // 0032
const num=3;
!!(num & 1)                    // true
!!(num % 2)                    // true
1.5 | 0         // 1
1.2 | 0         // 1
-1.9 | 0        // -1
const compact = arr => arr.filter(Boolean)
compact([0, 1, false, 2, '', 3, 'a', 'e' * 23, NaN, 's', 34])
// [ 1, 2, 3, 'a', 's', 34 ]
function  isNumber(obj)  {
      return  obj === +obj
}
function  isString(obj)  {
    return  obj === obj + ''
}
function  isBoolean(obj)  {
    return  obj === !!obj
}
const obj = { x:x, y:y };
// 等同于
const obj = { x, y };
let big;
if (x > 10) {   
  big = true; 
} else{ 
   big = false; 
}
let  big = x > 10 ? true : false;   //三目运算
"myString".charAt(0);
//简化
"myString"[0];   //返回'm'
(~arr.indexOf('zank') )   等价于   (arr.indexOf('zank')>-1)   
常规的有JSON.parse(string)和eval("("+string+")"),还有一小众用法
let json = (new Function("return " + string))();  //还可用于字符串转数组等
var a=1,
    b=2;
a=[b,b=a][0];
ie11 = !!window.MSInputMethodContext;

参考链接:如何判断是什么浏览器

JavaScript 复杂判断的更优雅写法

仅供自娱自乐,不定期整理。

上一篇下一篇

猜你喜欢

热点阅读