亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

undefined是否會(huì)變?yōu)閚ull原理解析

 更新時(shí)間:2023年02月10日 08:45:13   作者:我的div丟了腫么辦  
這篇文章主要為大家介紹了undefined是否會(huì)變?yōu)閚ull原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

echarts 會(huì)將 series data中的數(shù)據(jù)并不是你想的那樣簡(jiǎn)單

我們很多小伙伴都使用過(guò)echarts。

然后 series:[{  data:[]  }] 中的數(shù)據(jù)可能并沒(méi)有我們想的那樣簡(jiǎn)單

為什么會(huì)這樣說(shuō):因?yàn)槟憧聪旅孢@個(gè)例子絕對(duì)會(huì)然你有所收獲。

series data 中的數(shù)據(jù)會(huì)自動(dòng)發(fā)生變化嗎?

<template>
  <div>
    <!-- 第1處:小伙伴們覺(jué)得這里數(shù)組中的值是否是
      [undefined, undefined, undefined, undefined,
      undefined, undefined, undefined]
    -->
    <h4>{{ objInfo.data1 }}</h4>
    <div id='demo1'></div>
  </div>
</template>
<script>
import echarts from 'echarts'
export default {
  data() {
    return {
      objInfo: {
        data1: [undefined, undefined, undefined, undefined,
        undefined, undefined, undefined],
        xdata1: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
      }
    }
  },
  mounted() {
    var myChart1 = echarts.init(document.getElementById("demo1"));
    let option1 = {
      xAxis: {
        type: 'category',
        data: this.objInfo.xdata1
      },
      yAxis: {
        type: 'value'
      },
      series: [
        {
          data: this.objInfo.data,
          type: 'line',
          smooth: true
        }
      ]
    };
    //第2處:小伙伴們覺(jué)得這里應(yīng)該輸出的數(shù)組的值是什么呢?
    console.log('控制臺(tái)輸入的數(shù)據(jù)', this.objInfo.data1)
    myChart1.setOption(option1); 
  }
}
</script>

大家覺(jué)得頁(yè)面中

第1處: <h4>{{ objInfo.data1 }}</h4> 數(shù)組中的值是否是 undefined ?

很多小伙伴都會(huì)覺(jué)得這里應(yīng)該是 

[undefined, undefined, undefined, undefined,
undefined, undefined, undefined] 是這樣還是不是這樣 ?

第2處:小伙伴們覺(jué)得這里應(yīng)該輸出的數(shù)組的值是什么呢?

console.log('控制臺(tái)輸入的數(shù)據(jù)', this.objInfo.data1)
[undefined, undefined, undefined, undefined, 
undefined, undefined, undefined] 是這樣還是不是這樣 ?

小伙伴們想好結(jié)果了嗎? 如果想好了。請(qǐng)看下面的圖片

為什么會(huì)series data 中 undefined 會(huì)變?yōu)?null

有的小伙伴會(huì)說(shuō):是不是echarts底層在更改了數(shù)據(jù)?
有可能,我們使用watch去監(jiān)聽(tīng)一下,如果更改數(shù)據(jù)肯定會(huì)被我們監(jiān)聽(tīng)到
watch: {
  "obj.data1": function (newval, oldval) {
    console.log('oldval', oldval)
    console.log('newval', newval)
  },
  deep: true,
},

通過(guò)上面的圖片我們可以知道,echarts并沒(méi)有更改數(shù)據(jù).否者會(huì)觸發(fā)watch

說(shuō)明并不是echarts底層給我們改了數(shù)據(jù)。

那數(shù)據(jù)從undefined 變?yōu)?null 肯定是有一個(gè)地方改動(dòng)了。

如果不是echarts,那就是vue。難道真的是vue給我們改了數(shù)據(jù)?

求證:undefined 會(huì)變?yōu)?null是 vue 的鍋

<template>
  <div>
    <h3>數(shù)據(jù)會(huì)變?yōu)閡nll嗎</h3>
    <h2>{{ data2 }}</h2>
   </div>
</template>
export default {
  data() {
    return {
      data2:[undefined,undefined]
    }
  },
  mounted() {
    console.log('data2', this.data2)
  }
}

我滴親娘呢?真的是vue給我們改了的呀,簡(jiǎn)直不敢相信。

有的小伙伴又說(shuō):有沒(méi)有可能也不是vue的鍋。

而是js本身就有這樣的特征,在視圖上會(huì)由 undefined 變?yōu)?null

下面我們不要使用vue框架。就使用普通的js去看看。

如果還是從 undefined 變?yōu)榱?null.說(shuō)明是 vue 的鍋。

否者這就是一個(gè)特征:在視圖上會(huì)由 undefined 變?yōu)?null

小心求證 數(shù)據(jù)由 undefined 變?yōu)?null

<body>
    <h3>數(shù)據(jù)會(huì)發(fā)生變化嗎?</h3>
    <div id="demo"> </div>
</body>
<script>
    let data = {
        arr: [undefined, undefined, undefined, undefined, '數(shù)據(jù)1'],
        title: '會(huì)發(fā)生變化嗎?'
    }
    let demo = document.getElementById('demo')
    console.log('控制臺(tái)的數(shù)據(jù)', data)
    let htmltest = `<div>${data.arr}</div>`
    demo.innerHTML = htmltest
</script>

我們發(fā)現(xiàn)了:

原生js中, undefined在視圖上會(huì)變?yōu)榭兆址?/p>

但是在vue中,undefined在視圖上會(huì)變?yōu)閚ull。

我們看下:原生js中 null 在視圖上是否也會(huì)變?yōu)榭兆址畣幔?/h3>
<body>
    <h3>數(shù)據(jù)會(huì)發(fā)生變化嗎?</h3>
    <div id="demo"> </div>
</body>
<script>
  let data = {
      arr: [undefined, '數(shù)據(jù)2', null, '數(shù)據(jù)4'],
  }
  let demo = document.getElementById('demo')
  console.log('控制臺(tái)的數(shù)據(jù)', data)
  let htmltest = `<div>${data.arr}</div>`
  demo.innerHTML = htmltest
</script>

 原生js中 null 在視圖上也會(huì)變?yōu)榭兆址畣? 是的

我為什會(huì)糾結(jié)在視圖上 undefined 發(fā)生了變化呢?

因?yàn)榻裉煳野l(fā)現(xiàn):在頁(yè)面上的null。

我在代碼中找了好久都沒(méi)有找到哪一個(gè)地方寫(xiě)了null.這讓我很疑惑

花費(fèi)了我不少時(shí)間,導(dǎo)致我沒(méi)有辦法摸魚(yú)。

所以:為了更好的摸魚(yú),呸,呸,呸, 為了掘金的獎(jiǎng)品 就寫(xiě)下了這篇文章。

總結(jié)

通過(guò)一步一步的分析:我們知道了

1==》在vue中, undefined 在視圖上會(huì)變?yōu)?null。

在vue中, null 在視圖上仍然是 null

補(bǔ)充:但是字符串 'undefined' 和 'null' 在視圖上會(huì)保持不變

2==》原生js中, undefined 在視圖上會(huì)變?yōu)榭兆址?/p>

null 在視圖上也會(huì)變?yōu)榭兆址?/p>

補(bǔ)充:但是字符串 'undefined' 和 'null' 在視圖上會(huì)保持不變

以上就是undefined是否會(huì)變?yōu)閚ull原理解析的詳細(xì)內(nèi)容,更多關(guān)于undefined是否會(huì)變?yōu)閚ull的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vue實(shí)現(xiàn)滾動(dòng)鼠標(biāo)滾輪切換頁(yè)面

    vue實(shí)現(xiàn)滾動(dòng)鼠標(biāo)滾輪切換頁(yè)面

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)滾動(dòng)鼠標(biāo)滾輪切換頁(yè)面,類(lèi)似于縱向走馬燈,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • vue環(huán)境如何實(shí)現(xiàn)div?focus?blur焦點(diǎn)事件

    vue環(huán)境如何實(shí)現(xiàn)div?focus?blur焦點(diǎn)事件

    這篇文章主要介紹了vue環(huán)境如何實(shí)現(xiàn)div?focus?blur焦點(diǎn)事件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue使用swiper實(shí)現(xiàn)中間大兩邊小的輪播圖效果

    vue使用swiper實(shí)現(xiàn)中間大兩邊小的輪播圖效果

    這篇文章主要介紹了vue使用swiper實(shí)現(xiàn)中間大兩邊小的輪播圖效果,本文分步驟通過(guò)實(shí)例代碼講解的非常詳細(xì),需要的朋友可以參考下
    2019-11-11
  • vue項(xiàng)目如何去掉URL中#符號(hào)的方法

    vue項(xiàng)目如何去掉URL中#符號(hào)的方法

    在開(kāi)發(fā)過(guò)程中發(fā)現(xiàn)路徑中帶有/#/的標(biāo)示,而且還去不掉,很丑陋,下面這篇文章主要給大家介紹了vue項(xiàng)目如何去掉URL中#符號(hào)的相關(guān)資料,文中通過(guò)實(shí)例代碼的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • Vue使用font-face自定義字體的案例詳解

    Vue使用font-face自定義字體的案例詳解

    @font-face?是?CSS?中的一個(gè)規(guī)則,它允許你加載服務(wù)器上的字體文件(遠(yuǎn)程或者本地),并在網(wǎng)頁(yè)中使用這些字體,本文給大家介紹了Vue使用font-face自定義字體的案例,并通過(guò)代碼講解的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • 基于Vue-Cli 打包自動(dòng)生成/抽離相關(guān)配置文件的實(shí)現(xiàn)方法

    基于Vue-Cli 打包自動(dòng)生成/抽離相關(guān)配置文件的實(shí)現(xiàn)方法

    基于Vue-cli 項(xiàng)目產(chǎn)品部署,涉及到的交互的地址等配置信息,每次都要重新打包才能生效,極大的降低了效率。這篇文章主要介紹了基于Vue-Cli 打包自動(dòng)生成/抽離相關(guān)配置文件 ,需要的朋友可以參考下
    2018-12-12
  • vue-star評(píng)星組件開(kāi)發(fā)實(shí)例

    vue-star評(píng)星組件開(kāi)發(fā)實(shí)例

    下面小編就為大家分享一篇vue-star評(píng)星組件開(kāi)發(fā)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • Vue實(shí)現(xiàn)縱向的物流時(shí)間軸效果的示例代碼

    Vue實(shí)現(xiàn)縱向的物流時(shí)間軸效果的示例代碼

    在當(dāng)今數(shù)字化的時(shí)代,用戶(hù)體驗(yàn)的優(yōu)化至關(guān)重要,物流信息的展示作為電商和供應(yīng)鏈領(lǐng)域中的關(guān)鍵環(huán)節(jié),其呈現(xiàn)方式直接影響著用戶(hù)對(duì)貨物運(yùn)輸狀態(tài)的感知和滿(mǎn)意度,所以本文介紹了Vue實(shí)現(xiàn)縱向的物流時(shí)間軸效果的方法,需要的朋友可以參考下
    2024-08-08
  • Pinia簡(jiǎn)單使用以及數(shù)據(jù)持久化詳解

    Pinia簡(jiǎn)單使用以及數(shù)據(jù)持久化詳解

    最近正在使用Pinia進(jìn)行狀態(tài)管理,我希望在重新刷新頁(yè)面時(shí)保持狀態(tài),下面這篇文章主要給大家介紹了關(guān)于Pinia簡(jiǎn)單使用以及數(shù)據(jù)持久化的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • vue實(shí)現(xiàn)移動(dòng)端touch拖拽排序

    vue實(shí)現(xiàn)移動(dòng)端touch拖拽排序

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)移動(dòng)端touch拖拽排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評(píng)論