Rumah hujung hadapan web tutorial js JavaScript初学者应注意的七个细节

JavaScript初学者应注意的七个细节

Nov 25, 2016 am 10:45 AM
javascript

每种语言都有它特别的地方,对于JavaScript来说,使用var就可以声明任意类型的变量,这门脚本语言看起来很简单,然而想要写出优雅的代码却是需要不断积累经验的。本文利列举了JavaScript初学者应该注意的七个细节,与大家分享。 

(1)简化代码

JavaScript定义对象和数组非常简单,我们想要创建一个对象,一般是这样写的:

1 var
 
car = 
new
 
Object();  
2 car.colour = 
red
;  
3 car.wheels = 4;  
4 car.hubcaps = 
spinning
;  
5 car.age = 4;

下面的写法可以达到同样的效果: 

1 var
 
car = {  
2     
colour:
red
,  
3     
wheels:4,  
4   hubcaps:
spinning
,  
5   age:4  
6 }

后面的写法要短得多,而且你不需要重复写对象名称。注意大括号后面不要加分号,否则IE中会出错。 

另外对于数组同样有简洁的写法,过去我们声明数组是这样写的: 

1 var
 
moviesThatNeedBetterWriters = 
new
 
Array(  
2   
Transformers
,
Transformers2
,
Avatar
,
Indiana Jones 4 
3 );

更简洁的写法是:  

1 var
 
moviesThatNeedBetterWriters = [  
2   
Transformers
,
Transformers2
,
Avatar
,
Indiana Jones 4 
3 ];

对于数组,还有关联数组这样一个特别的东西。 你会发现很多代码是这样定义对象的:

1 var
 
car = 
new
 
Array();  
2 car[
colour
] = 
red
;  
3 car[
wheels
] = 4;  
4 car[
hubcaps
] = 
spinning
;  
5 car[
age
] = 4;

这太疯狂了,不要觉得困惑,“关联数组”只是对象的一个别名而已。 另外一个简化代码的方法是使用三元运算符,举个例子:

1 var
 
direction;  
2 if
(x < 200){
3
direction = 1;
4 }
else

{
5
direction = -1;
6 }

我们可以使用如下的代码替换这种写法:

1 var

direction = x < 200 ? 1 : -1;

(2)使用JSON作为数据格式 伟大的Douglas Crockford发明了JSON数据格式来存储数据,你可以使用原生的javascript方法来存储复杂的数据而不需要进行任何额外的转换,例如:

01 var

band = {
02
"name"
:
"The Red Hot Chili Peppers"
,
03
"members"
:[
04
{
05
"name"
:
"Anthony Kiedis"
,
06
"role"
:
"lead vocals"
07
},
08
{
09
"name"
:
"Michael Flea Balzary"
,
10
"role"
:
"bass guitar, trumpet, backing vocals"
11
},
12
{
13
"name"
:
"Chad Smith"
,
14
"role"
:
"drums,percussion"
15
},
16
{
17
"name"
:
"John Frusciante"
,
18
"role"
:
"Lead Guitar"
19
}
20
],
21
"year"
:
"2009"
22 }

你可以使用在JavaScript中直接使用JSON,甚至作为API返回的一种格式,这就是所谓的JSON ? P,在许多的API中被应用,例如:

01 <
div

id
=
"delicious"
>div
><
script
>  
02 function delicious(o){  
03   
var out = <
ul
>;  
04   
for(var i=0;i<
o.length
;i++){
05
out +=

  • <
    a

    href
    =
    " + o[i].u + "
    > +  
    06            
    o[i].d + a
    >li
    >;  
    07   
    }  
    08   
    out += ul
    >;  
    09   
    document.getElementById(delicious).innerHTML = out;  
    10 }  
    11 script
    >  
    12 <
    script

    src
    =
    "http://feeds.delicious.com/v2/json/codepo8/javascript?count=15&callback=delicious"
    >script
    >

    这里调用delicious 的Web服务获取最新书签,以JSON格式返回,然后将它们显示成无序列表的形式。 从本质上讲,JSON是用于描述复杂的数据最轻量级的方式,而且直接它运行在浏览器中。 你甚至可以在PHP中调用 json_decode()函数来使用它。

    1 "FONT-FAMILY: 宋体; mso-ascii-font-family: Times New Roman; mso-hansi-font-family: Times New Roman"
    >"FONT-SIZE: 14pt"
    >(3)
    "FONT-SIZE: 14pt"
    >"FONT-FAMILY: 宋体; mso-ascii-font-family: Times New Roman; mso-hansi-font-family: Times New Roman"
    >尽量使用
    "FONT-FAMILY: Times New Roman"

    face=
    "Times New Roman"
    >Javascript
    "FONT-FAMILY: 宋体; mso-ascii-font-family: Times New Roman; mso-hansi-font-family: Times New Roman"
    >原生函数
    "FONT-FAMILY: 宋体; mso-ascii-font-family: Times New Roman; mso-hansi-font-family: Times New Roman"
    >

     

    要找一组数字中的最大数,我们可能会写一个循环,例如:

    1 var
     
    numbers = [3,342,23,22,124];  
    2 var
     
    max = 0;  
    3 for
    (
    var
     
    i=0;i4
    if
    (numbers[i] > max){  
    5     
    max = numbers[i];  
    6   
    }  
    7 }  
    8 alert(max);

    其实,不用循环可以实现同样的功能:

    1 var
     
    numbers = [3,342,23,22,124];  
    2 numbers.sort(
    function
    (a,b){
    return
     
    b - a});  
    3 alert(numbers[0]);

    而最简洁的写法是:

    1 Math.max(12,123,3,2,433,4); 
    // returns 433

    你甚至可以使用Math.max来检测浏览器支持哪个属性:

    1 var
     
    scrollTop= Math.max(  
    2  
    doc.documentElement.scrollTop,  
    3  
    doc.body.scrollTop  
    4 );

    如果你想给一个元素增加class样式,可能原始的写法是这样的:

    1 function
     
    addclass(elm,newclass){  
    2   
    var
     
    c = elm.className;  
    3   
    elm.className = (c === 

    ) ? newclass : c+

    +newclass;

    而更优雅的写法是:

    1 function
     
    addclass(elm,newclass){  
    2   
    var
     
    classes = elm.className.split(

    );  
    3   
    classes.push(newclass);  
    4   
    elm.className = classes.join(

    );  
    5 }

       

    (4)事件委托

    事件是JavaScript非常重要的一部分。我们想给一个列表中的链接绑定点击事件,一般的做法是写一个循环,给每个链接对象绑定事件,HTML代码如下:

    1

    Great Web resources

      
    2
  • 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

    Alat AI Hot

    Undresser.AI Undress

    Undresser.AI Undress

    Apl berkuasa AI untuk mencipta foto bogel yang realistik

    AI Clothes Remover

    AI Clothes Remover

    Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

    Undress AI Tool

    Undress AI Tool

    Gambar buka pakaian secara percuma

    Clothoff.io

    Clothoff.io

    Penyingkiran pakaian AI

    AI Hentai Generator

    AI Hentai Generator

    Menjana ai hentai secara percuma.

    Artikel Panas

    R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
    3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Tetapan grafik terbaik
    3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
    3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25: Cara Membuka Segala -galanya Di Myrise
    4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

    Alat panas

    Notepad++7.3.1

    Notepad++7.3.1

    Editor kod yang mudah digunakan dan percuma

    SublimeText3 versi Cina

    SublimeText3 versi Cina

    Versi Cina, sangat mudah digunakan

    Hantar Studio 13.0.1

    Hantar Studio 13.0.1

    Persekitaran pembangunan bersepadu PHP yang berkuasa

    Dreamweaver CS6

    Dreamweaver CS6

    Alat pembangunan web visual

    SublimeText3 versi Mac

    SublimeText3 versi Mac

    Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

    Bagaimana untuk melaksanakan sistem pengecaman pertuturan dalam talian menggunakan WebSocket dan JavaScript Bagaimana untuk melaksanakan sistem pengecaman pertuturan dalam talian menggunakan WebSocket dan JavaScript Dec 17, 2023 pm 02:54 PM

    Cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem pengecaman pertuturan dalam talian Pengenalan: Dengan perkembangan teknologi yang berterusan, teknologi pengecaman pertuturan telah menjadi bahagian penting dalam bidang kecerdasan buatan. Sistem pengecaman pertuturan dalam talian berdasarkan WebSocket dan JavaScript mempunyai ciri kependaman rendah, masa nyata dan platform merentas, dan telah menjadi penyelesaian yang digunakan secara meluas. Artikel ini akan memperkenalkan cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem pengecaman pertuturan dalam talian.

    WebSocket dan JavaScript: teknologi utama untuk melaksanakan sistem pemantauan masa nyata WebSocket dan JavaScript: teknologi utama untuk melaksanakan sistem pemantauan masa nyata Dec 17, 2023 pm 05:30 PM

    WebSocket dan JavaScript: Teknologi utama untuk merealisasikan sistem pemantauan masa nyata Pengenalan: Dengan perkembangan pesat teknologi Internet, sistem pemantauan masa nyata telah digunakan secara meluas dalam pelbagai bidang. Salah satu teknologi utama untuk mencapai pemantauan masa nyata ialah gabungan WebSocket dan JavaScript. Artikel ini akan memperkenalkan aplikasi WebSocket dan JavaScript dalam sistem pemantauan masa nyata, memberikan contoh kod dan menerangkan prinsip pelaksanaannya secara terperinci. 1. Teknologi WebSocket

    Cara menggunakan JavaScript dan WebSocket untuk melaksanakan sistem pesanan dalam talian masa nyata Cara menggunakan JavaScript dan WebSocket untuk melaksanakan sistem pesanan dalam talian masa nyata Dec 17, 2023 pm 12:09 PM

    Pengenalan kepada cara menggunakan JavaScript dan WebSocket untuk melaksanakan sistem pesanan dalam talian masa nyata: Dengan populariti Internet dan kemajuan teknologi, semakin banyak restoran telah mula menyediakan perkhidmatan pesanan dalam talian. Untuk melaksanakan sistem pesanan dalam talian masa nyata, kami boleh menggunakan teknologi JavaScript dan WebSocket. WebSocket ialah protokol komunikasi dupleks penuh berdasarkan protokol TCP, yang boleh merealisasikan komunikasi dua hala masa nyata antara pelanggan dan pelayan. Dalam sistem pesanan dalam talian masa nyata, apabila pengguna memilih hidangan dan membuat pesanan

    Bagaimana untuk melaksanakan sistem tempahan dalam talian menggunakan WebSocket dan JavaScript Bagaimana untuk melaksanakan sistem tempahan dalam talian menggunakan WebSocket dan JavaScript Dec 17, 2023 am 09:39 AM

    Cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem tempahan dalam talian Dalam era digital hari ini, semakin banyak perniagaan dan perkhidmatan perlu menyediakan fungsi tempahan dalam talian. Adalah penting untuk melaksanakan sistem tempahan dalam talian yang cekap dan masa nyata. Artikel ini akan memperkenalkan cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem tempahan dalam talian dan memberikan contoh kod khusus. 1. Apakah itu WebSocket? WebSocket ialah kaedah dupleks penuh pada sambungan TCP tunggal.

    JavaScript dan WebSocket: Membina sistem ramalan cuaca masa nyata yang cekap JavaScript dan WebSocket: Membina sistem ramalan cuaca masa nyata yang cekap Dec 17, 2023 pm 05:13 PM

    JavaScript dan WebSocket: Membina sistem ramalan cuaca masa nyata yang cekap Pengenalan: Hari ini, ketepatan ramalan cuaca sangat penting kepada kehidupan harian dan membuat keputusan. Apabila teknologi berkembang, kami boleh menyediakan ramalan cuaca yang lebih tepat dan boleh dipercayai dengan mendapatkan data cuaca dalam masa nyata. Dalam artikel ini, kita akan mempelajari cara menggunakan teknologi JavaScript dan WebSocket untuk membina sistem ramalan cuaca masa nyata yang cekap. Artikel ini akan menunjukkan proses pelaksanaan melalui contoh kod tertentu. Kami

    Tutorial JavaScript Mudah: Cara Mendapatkan Kod Status HTTP Tutorial JavaScript Mudah: Cara Mendapatkan Kod Status HTTP Jan 05, 2024 pm 06:08 PM

    Tutorial JavaScript: Bagaimana untuk mendapatkan kod status HTTP, contoh kod khusus diperlukan: Dalam pembangunan web, interaksi data dengan pelayan sering terlibat. Apabila berkomunikasi dengan pelayan, kami selalunya perlu mendapatkan kod status HTTP yang dikembalikan untuk menentukan sama ada operasi itu berjaya dan melaksanakan pemprosesan yang sepadan berdasarkan kod status yang berbeza. Artikel ini akan mengajar anda cara menggunakan JavaScript untuk mendapatkan kod status HTTP dan menyediakan beberapa contoh kod praktikal. Menggunakan XMLHttpRequest

    Bagaimana untuk menggunakan insertBefore dalam javascript Bagaimana untuk menggunakan insertBefore dalam javascript Nov 24, 2023 am 11:56 AM

    Penggunaan: Dalam JavaScript, kaedah insertBefore() digunakan untuk memasukkan nod baharu dalam pepohon DOM. Kaedah ini memerlukan dua parameter: nod baharu untuk dimasukkan dan nod rujukan (iaitu nod di mana nod baharu akan dimasukkan).

    Bagaimana untuk mendapatkan kod status HTTP dalam JavaScript dengan cara yang mudah Bagaimana untuk mendapatkan kod status HTTP dalam JavaScript dengan cara yang mudah Jan 05, 2024 pm 01:37 PM

    Pengenalan kepada kaedah mendapatkan kod status HTTP dalam JavaScript: Dalam pembangunan bahagian hadapan, kita selalunya perlu berurusan dengan interaksi dengan antara muka bahagian belakang, dan kod status HTTP adalah bahagian yang sangat penting daripadanya. Memahami dan mendapatkan kod status HTTP membantu kami mengendalikan data yang dikembalikan oleh antara muka dengan lebih baik. Artikel ini akan memperkenalkan cara menggunakan JavaScript untuk mendapatkan kod status HTTP dan memberikan contoh kod khusus. 1. Apakah kod status HTTP bermakna kod status HTTP apabila penyemak imbas memulakan permintaan kepada pelayan, perkhidmatan tersebut

    See all articles