jQuery之工具方法(type、isArray、isFunction、isWindow、noConflict、each、map)

$ .type()、$ .isArray()、 $ .isFunction()、$ .isWindow()

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>溫故而知“心”</title>
</head>

<body>
</body>
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script>
  // typeof() 裏面的數據是什麼類型
  
  // $.type() 裏面的數據到底是什麼
  console.log( $.type(undefined) )
  console.log( $.type("abc") )
  console.log( $.type(123) )
  console.log( $.type(true) )
  console.log( $.type(function() {}) )
  console.log( $.type(null) )
  console.log( $.type({}) )
  console.log( $.type([1, 2, 3, 4]) )
  console.log( $.type(new Date()) )
  console.log( $.type(new Number) )
  console.log( $.type(new Person()) )
  function Person(){}

  // $.isArray()  判斷是不是數組,返回boolean值
  const arrays = [1, 2, 3];
  console.log( $.isArray(arrays) )
  // $.isFunction()  判斷是不是方法,返回boolean值
  function fn(){}
  console.log( $.isFunction(fn) )
  // $.isWindow()  判斷是不是window,返回boolean值
  console.log( $.isWindow(window) )

  // $.trim()消除空格
  const text = "      1     2    3      ";
  console.log(text)
  console.log( $.trim(text) )
</script>
</html>

$.noConflict()防止衝突

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>溫故而知“心”</title>
  <style>
    .demo {
      width: 100px;
      height: 100px;
      background-color: #ff0000;
    }
  </style>
</head>

<body>
  <div class="demo"></div>
</body>
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script>
  // $.noConflict()防止衝突
  const $C = $.noConflict();
  // 變量命名衝突 $
  $C('.demo').css({ backgroundColor: '#0000ff' })
</script>

</html>

$ .each() 、$.map()

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>溫故而知“心”</title>
  <style></style>
</head>

<body>
</body>
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script>
  /*
    $.each()是沒有ES5的forEach效率高的
  */
  const arr = [1, 2, 3];
  $.each(arr, function (index, ele) {
    console.log(index, ele)
  })

  // ES5的map是根據JQuery的$.map()演變來的
  const cont = $.map(arr, function (index, ele) {
    return ele * index
  })
  console.log(`cont`, cont)
</script>

</html>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章