国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

隨便說說規范

XboxYan / 1427人閱讀

摘要:前端的進階其實和如何使用規范是完全相關的。總結起來整個流程就是無規范有規范無規范。另外,還有一個名叫的命令規范,不過他主要正對于的命名。我們來說說那些地方需要使用注釋。另外,規范當然還有很多,比如縮進,空格,逗號等。

前端的進階其實和如何使用規范是完全相關的。

新手: 啊,什么,這有規范嗎? 我不會誒
進階: 恩,每次,這里需要加分號。 這個逗號應該放這里...
大神: 啊,前端有規范嗎? 這里需要放分號,那里不需要放分號。 這里可以不大寫,我偏大寫。

總結起來整個流程就是:無規范 -> 有規范 -> 無規范。

所以,這里我們來談一談規范在前端的意義吧。由于,本人純屬小白,所以,咱不裝逼,我們談談有規范的那一塊。%>_<%

其實前端規范,就這幾個,命名,分隔符,縮進等。

分號

這個應該算是我們最常見的,但是也是坑最多的一個。即,每條語句結尾都需要加分號.

我們來看個例子:

var a = 2
2
console.log(a);  //2

本來我們想要的結果應該是a=22,但是現實往往是不要臉的。他的結果是2。

為什么呢? 為什么呢? 為什么呢?

我們來看一下ECMA的對此的解釋。

我們只在看起來像是一條語句的后面加上分號表示一句

實際上其實是這樣的:

var a = 2;
2;

所以,一條語句寫完之后別手賤 換行,因為你不知道你正在做一件十分 keai的事,而且每條語句最好都加上分號,至少不會出錯。

好吧,還說服不了你的話。我們來看一個經典的問題

;(function(){
    // ...
})();

如果 你看過一些插件的話,應該會發現這個普遍的現象。

為什么呢? 為什么呢? 為什么呢?

為了防止出Bug呀。。。 艸
咳咳~ 開玩笑,

舉個實例吧。

var speak = function(para){console.log(para); return "speak is "+para;}
("I want to Speak").toString();
console.log(speak);

如果看代碼的話,應該能讀懂我的意圖吧? 但是,js解釋器,從不給你解釋的機會。

上面代碼的結果是:

I want to Speak
speak is I want to Speak

我真*了狗。第一個I want to Speak 是函數表達式里面的console.log(para)里面的。第二個 "speak is I want to Speak" 就是console.log(speak)里面的內容了。

總結一下,原因,我們最怕遇見這種情況,在函數后面使用"()"就相當于調用該函數并且傳入參數,所以上面執行情況是。

var speak = function(para){console.log(para); return "speak is "+para}("I want to Seapk").toString();
//首先獲得函數表達式的執行結果.
function(para){console.log(para); return "speak is "+para}("I want to Seapk")
//然后將結果內容toString,返回給speak
speak = xxx.toString();  //返回的結果

所以,懂了吧, 一些插件之所以要在IIFE前面加上";"就是這個道理。 加分號的時候,我們一定要不怕苦,不怕累,就怕出bug。

命名

普遍而言,我們最常使用的就是兩種方法。

給類命名(原諒我說類)--使用首字母大寫的camel式

var person = new People();  //People就是使用首字母大寫的camel式

給變量命名--使用首字母小寫的camel式

var myBook = new Books();  //myBook就是采用變量名的命名

當然,這個只是命名的簡單兩種方法,也是廣為接受的。另外,還有一個名叫"BEM"的命令規范,不過他主要正對于css的命名。如果感興趣的同學可以了解一下: 傳送門。

注釋

感覺在js里面真的是弱化了注釋的效果, 從以前幾十行代碼就可以寫完的一個js,到現在的大型webApp,單頁應用,你再寫30+的js試一試。 所以,可能是被遺傳了吧,我大部分的朋友都不喜歡寫注釋,但這里真的希望大家在寫代碼的時候一定要多寫注釋。 坊間有個不成文的規定,如果你的注釋不占你程序的2/3的話,你這個程序won"t pass. 同時,寫注釋也是給你的接手人,一個很好的指導意義。

通常我們寫注釋可以直接使用快捷鍵:

//windows
ctrl+/
//MAC
command+/

這樣方便,易記。

我們來說說那些地方需要使用注釋。

文件開頭:一個main.js的開頭需要使用注釋,來說明你js文件的相關信息,以及功能描述。通常是:

 /**
 * @author jimmy
 * @file Image.js
 * @description 功能詳細描述
 */

重要函數:給你的函數加上一些基本描述是很有必要的。通常有功能,參數效果,是否有返回值。

/**
 * 簡述
 *
 * 功能詳細描述
 *
 * @param  arg1 參數1
 * @param  arg2 參數2,默認為0
 * @return  看xxx是否成功
 */
 
 function doSth (arg1, arg2) {
 }

重要語句:其實js程序里面,要么不是函數,要么就是單語句。關于語句的注釋應該沒什么說的。 就是在每行語句上,加上一條注釋,可以不用上面這么復雜的,直接使用command + /即可。

//是否登錄
var isOk = isLogin?true:false;

OK,注釋差不多就是這幾個部分。

另外,js規范當然還有很多,比如縮進,空格,逗號等。,(艸)

寶寶不想說啦。 其實這些規范你使用code pretty一下就好看了。如果你使用sublime 你可以下一個package HTML pretty 等相關的代碼美化插件。都是可以的。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78635.html

相關文章

  • 一篇文章帶你嘗試拿下js異步

    摘要:單線程就意味著,所有任務需要排隊,前一個任務結束,才會執行后一個任務。這決定了它只能是單線程,否則會帶來很復雜的同步問題。小結本身是單線程的,并沒有異步的特性。當異步函數執行時,回調函數會被壓入這個隊列。 走在前端的大道上 本篇將自己讀過的相關 js異步 的文章中,對自己有啟發的章節片段總結在這(會對原文進行刪改),會不斷豐富提煉總結更新。 概念 JS 是單線程的語言。 單線程就意味著...

    MartinDai 評論0 收藏0
  • 探討一下Vue和以前的jquery開發的區別

    摘要:我是一名光榮的前端工程師,一直從事前端的開發工作。但是開發是前后端分離開發,通過進行交互,客戶端請求服務器返回數據,由客戶端進行渲染。因為前端代碼和后臺代碼都是分開的,所以項目更容易維護,開發效率更高。 我是一名光榮的前端工程師,一直從事web前端的開發工作。當時可以說是零基礎入門,之前因為前端的html、css、js比較好學,所以也愚蠢的認為web前端很簡單,很沒有技術含量。當然不僅...

    galois 評論0 收藏0
  • 探討一下Vue和以前的jquery開發的區別

    摘要:我是一名光榮的前端工程師,一直從事前端的開發工作。但是開發是前后端分離開發,通過進行交互,客戶端請求服務器返回數據,由客戶端進行渲染。因為前端代碼和后臺代碼都是分開的,所以項目更容易維護,開發效率更高。 我是一名光榮的前端工程師,一直從事web前端的開發工作。當時可以說是零基礎入門,之前因為前端的html、css、js比較好學,所以也愚蠢的認為web前端很簡單,很沒有技術含量。當然不僅...

    wean 評論0 收藏0
  • 開工大吉!簡單的說說公司的開發規范

    摘要:大家好,好久沒有寫公眾號了,最近有朋友參加面試被問到開發規范的問題,突然發現每天干著工作,卻沒有關注這個問題,就想著寫篇文章,簡單的說下自己公司的開發規范。 大家好,好久沒有寫公眾號了,最近有朋友參加面試被問到開發規范的問題,突然發現每天干著工作,卻沒有關注這個問題,就想著寫篇文章,簡單的說下自己公司的開發規范。 showImg(https://segmentfault.com/img...

    edagarli 評論0 收藏0

發表評論

0條評論

XboxYan

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<