Tujuh kemahiran JavaScript (2)_kemahiran javascript

WBOY
Lepaskan: 2016-05-16 15:25:48
asal
1127 orang telah melayarinya

Artikel terakhir memperkenalkan anda kepada Tujuh Kemahiran JavaScript (2 Saya telah menulis kod JavaScript untuk masa yang lama, dan saya tidak ingat bila saya mula. Saya sangat teruja dengan pencapaian JavaScript dalam beberapa tahun kebelakangan ini. Saya telah menulis beberapa artikel, bab dan buku yang didedikasikan untuknya, namun saya masih menemui perkara baharu tentang bahasa itu. Apa yang berikut ialah penerangan tentang teknik pengaturcaraan yang telah membuatkan saya berkata "Ah pada masa lalu, dan ia adalah teknik yang anda patut cuba sekarang daripada menunggu untuk menemuinya pada satu ketika pada masa hadapan.

var band = {
   "name":"The Red Hot Chili Peppers",
   "members":[
   {
   "name":"Anthony Kiedis",
   "role":"lead vocals"
   },
   {
   "name":"Michael 'Flea' Balzary",
   "role":"bass guitar, trumpet, backing vocals"
   },
   {
   "name":"Chad Smith",
   "role":"drums,percussion"
   },
   {
   "name":"John Frusciante",
   "role":"Lead Guitar"
   }
   ],
   "year":""
   }
Salin selepas log masuk

Anda boleh menggunakan JSON secara langsung dalam JavaScript, merangkumnya dalam fungsi, atau menggunakannya sebagai nilai pulangan API. Kami memanggil ini JSON-P, dan banyak API menggunakan borang ini. Anda boleh menghubungi pembekal data dan mengembalikan data JSON-P terus dalam kod skrip:

01 
12 

Ini adalah untuk memanggil fungsi perkhidmatan Web yang disediakan oleh tapak web Delicious untuk mendapatkan senarai penanda halaman yang tidak tersusun dalam format JSON.

Pada asasnya, JSON ialah cara paling mudah alih untuk menerangkan struktur data yang kompleks, dan ia boleh dijalankan dalam penyemak imbas.

Anda juga boleh menjalankannya dalam PHP menggunakan fungsi json_decode().

Fungsi terbina dalam JavaScript (Math, Array dan String) 

Satu perkara yang mengejutkan saya ialah apabila saya mempelajari fungsi matematik dan String dalam JavaScript, saya mendapati ia boleh memudahkan kerja pengaturcaraan saya.

Menggunakannya, anda boleh menyimpan pemprosesan gelung kompleks dan pertimbangan bersyarat.

Sebagai contoh, apabila saya perlu melaksanakan fungsi untuk mencari nombor terbesar dalam tatasusunan nombor, saya pernah menulis gelung seperti ini:

 var numbers =
  [,,,,];
   var max = ;
   for(var i=;i
   if(numbers[i]
  > max){
   max = numbers[i];
   }
   }
   alert(max);
Salin selepas log masuk

Kita boleh mencapai ini tanpa menggelung:

 var numbers =

  [,,,,];
   numbers.sort(function(a,b){return b -
  a});
   alert(numbers[]);
Salin selepas log masuk

Perlu diingat bahawa anda tidak boleh mengisih() tatasusunan aksara angka, kerana dalam kes ini ia hanya akan diisih mengikut susunan abjad.
Jika anda ingin mengetahui lebih lanjut penggunaan, anda boleh membaca artikel yang bagus ini tentang sort().

Satu lagi fungsi menarik ialah Math.max().

Fungsi ini mengembalikan nombor terbesar antara nombor dalam parameter:

Math.max(12,123,3,2,433,4); // returns 433 
Salin selepas log masuk

Oleh kerana fungsi ini menyemak nombor dan mengembalikan yang terbesar, anda boleh menggunakannya untuk menguji sokongan penyemak imbas untuk ciri:

 var scrollTop=
  Math.max(
   doc.documentElement.scrollTop,
   doc.body.scrollTop
   );
Salin selepas log masuk

Ini digunakan untuk menyelesaikan masalah IE. Anda boleh mendapatkan nilai scrollTop halaman semasa, tetapi bergantung pada DOCTYPE pada halaman, hanya satu daripada dua sifat di atas akan menyimpan nilai ini dan sifat lain akan tidak ditentukan, jadi anda boleh mendapatkannya dengan menggunakan Math.max () nombor.

Baca artikel ini dan anda akan mendapat lebih banyak pengetahuan tentang menggunakan fungsi matematik untuk memudahkan JavaScript.

Sepasang lagi fungsi yang sangat berguna untuk memanipulasi rentetan ialah split() dan join(). Saya rasa contoh yang paling mewakili ialah menulis fungsi untuk melampirkan gaya CSS pada elemen halaman.

Inilah keadaannya. Apabila anda melampirkan kelas CSS pada elemen halaman, ia adalah kelas CSS pertama elemen ini, atau ia sudah mempunyai beberapa kelas. Anda perlu menambah ruang selepas kelas sedia ada kemudian tambah kelas ini. Dan apabila anda ingin mengalih keluar kelas ini, anda juga perlu mengalih keluar ruang di hadapan kelas (ini sangat penting pada masa lalu, kerana beberapa pelayar lama tidak mengenali kelas diikuti dengan ruang).

Jadi, tulisan asalnya adalah seperti ini:

 function addclass(elm,newclass){
   var c =
  elm.className;
   elm.className = (c === '') ? newclass : c+' '+newclass;
   }  你可以使用 split() 和 join() 函数自动完成这个任务: function addclass(elm,newclass){
   var classes =
  elm.className.split(' ');
   classes.push(newclass);
   elm.className = classes.join(' ');
   }  
Salin selepas log masuk

Ini akan memastikan bahawa semua kelas dipisahkan oleh ruang dan kelas yang anda ingin tambahkan diletakkan pada penghujung.

Ini adalah tingkah laku rabun. Kit alat boleh membantu anda membangun dengan cepat, tetapi jika anda tidak memahami JavaScript dengan mendalam, anda juga boleh melakukan perkara yang salah.

Menyimpan data dalam format JSON

Sebelum saya menemui JSON, saya menggunakan semua jenis kaedah gila untuk menyimpan data dalam jenis data asli JavaScript, seperti tatasusunan, rentetan, bercampur dengan simbol yang mudah dipisahkan dan perkara Nasty lain yang mengelirukan.

Selepas Douglas Crockford mencipta JSON, semuanya berubah.

Menggunakan JSON, anda boleh menggunakan fungsi JavaScript sendiri untuk menyimpan data ke dalam format yang kompleks, dan ia boleh diakses terus dan digunakan tanpa sebarang penukaran tambahan.

JSON ialah singkatan "JavaScript Object Notation", yang menggunakan dua kaedah singkatan yang dinyatakan di atas.

Kandungan di atas ialah tujuh kemahiran JavaScript yang telah dikongsi oleh editor dengan anda.

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan