cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Jika kaedah perlu menggunakan data luaran, sekiranya anda memilih untuk menghantarnya sebagai parameter atau menyimpan data sebagai pembolehubah global berbanding skop semasa~

var test = {
    init: function () {
        var data = $rootScope.test;
        
        if(data) {
            ……
            this.method(data);
        } 
    },
    
    method: function (data) {
        console.log(data);
    }
};

masih

var test = {
    data: $rootScope.test,
    
    init: function () {
        if(this.data) {
            ……
            this.method();
        } 
    },
    
    method: function () {
        console.log(this.data);
    }
};

Kaedah yang mana satu amalan terbaik

Apa yang perlu dilakukan jika terdapat terlalu banyak tahap yang perlu dilalui dalam kaedah pertama Contohnya, ia bermula dengan init dan memanggil kaedah Selepas lulus, terdapat kaedah pelaksanaan adalah kaedah -> -> kaedah2 -> ini memerlukan satu tahap lulus...

Terdapat juga dua kaedah, yang mana satu mempunyai prestasi yang lebih tinggi? Kaedah kedua adalah setara dengan mendapatkan sifat objek setiap kali Nampaknya prestasi parameter lulus secara langsung akan menjadi lebih teruk? ~

女神的闺蜜爱上我女神的闺蜜爱上我2762 hari yang lalu880

membalas semua(3)saya akan balas

  • 三叔

    三叔2017-07-05 11:02:45

    Pindahkan, kurangkan gunakan pembolehubah global

    balas
    0
  • 淡淡烟草味

    淡淡烟草味2017-07-05 11:02:45

    Pembolehubah global tidak dikira dalam contoh anda!

    Bergantung pada sifat objek dan tidak akan menjejaskan penggunaan pembolehubah di dalam kaedah! Ia tidak akan mencemarkan skop sama ada!

    balas
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-07-05 11:02:45

    Apa yang anda laksanakan di sini bukan pembolehubah global, ia hanya dilampirkan pada sifat objek Mengapa perlu untuk mengisytiharkan pembolehubah di sini. data,如果只是想引用一下值得话,那么直接用$rootScope.test

    balas
    0
  • Batalbalas