• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

    javascript簡(jiǎn)寫常用的12個(gè)技巧(可以大大減少你的js代碼量)

    來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:33:01
    文檔

    javascript簡(jiǎn)寫常用的12個(gè)技巧(可以大大減少你的js代碼量)

    javascript簡(jiǎn)寫常用的12個(gè)技巧(可以大大減少你的js代碼量):前言 本文主要給大家分享了javascript簡(jiǎn)寫常用的12個(gè)技巧,無論你是初學(xué)者還是資深人士,都值得一讀!下面話不多說了,來一起看看詳細(xì)的介紹: 1. 空(null, undefined)驗(yàn)證 當(dāng)我們創(chuàng)建了一個(gè)新的變量,我們通常會(huì)去驗(yàn)證該變量的值是否為空(null)或者未
    推薦度:
    導(dǎo)讀javascript簡(jiǎn)寫常用的12個(gè)技巧(可以大大減少你的js代碼量):前言 本文主要給大家分享了javascript簡(jiǎn)寫常用的12個(gè)技巧,無論你是初學(xué)者還是資深人士,都值得一讀!下面話不多說了,來一起看看詳細(xì)的介紹: 1. 空(null, undefined)驗(yàn)證 當(dāng)我們創(chuàng)建了一個(gè)新的變量,我們通常會(huì)去驗(yàn)證該變量的值是否為空(null)或者未

    前言

    本文主要給大家分享了javascript簡(jiǎn)寫常用的12個(gè)技巧,無論你是初學(xué)者還是資深人士,都值得一讀!下面話不多說了,來一起看看詳細(xì)的介紹:

    1. 空(null, undefined)驗(yàn)證

    當(dāng)我們創(chuàng)建了一個(gè)新的變量,我們通常會(huì)去驗(yàn)證該變量的值是否為空(null)或者未定義(undefined)。這對(duì)于JavaScript編程來說,是一個(gè)經(jīng)常要考慮到的驗(yàn)證。

    如果直接寫,像下面這樣:

    if (variable1 !== null || variable1 !== undefined || variable1 !== ''){
     let variable2 = variable1;
    }

    我們可以使用一個(gè)更加簡(jiǎn)潔的版本

    let variable2 = variable1 || '';

    如果你不信,可以在谷歌瀏覽器開發(fā)者模式下的控制臺(tái)中試試!

    //值為null的例子
    let variable1 = null;
    let variable2 = variable1 || '';
    console.log(variable2);
    //
    輸出: '' //值為undefined的例子 let variable1 = undefined; let variable2 = variable1 || ''; console.log(variable2); //輸出: '' //正常情況 let variable1 = 'hi there'; let variable2 = variable1 || ''; console.log(variable2); //輸出: 'hi there'

    在這里要注意的是,你在調(diào)試完一組代碼后要刷新下頁面,或者定義不同的變量,不然會(huì)報(bào)錯(cuò):

    2. 數(shù)組

    這個(gè)好像比較簡(jiǎn)單!

    非優(yōu)化代碼:

    let a = new Array(); a[0] = "myString1"; a[1] = "myString2"; a[2] = "myString3";

    優(yōu)化代碼:

    let a = ["myString1", "myString2", "myString3"];

    3. if true .. else 的優(yōu)化

    let big;
    if (x > 10) {
    big = true;
    }
    else {
    big = false;
    }

    簡(jiǎn)化后:

    let big = x > 10 ? true : false;

    這是三目運(yùn)算,當(dāng)判斷條件和結(jié)果都只有一個(gè)的時(shí)候可以使用。

    極大的簡(jiǎn)化了代碼量!

    let big = (x > 10);
    let x = 3,
    big = (x > 10) ? "greater 10" : (x < 5) ? "less 5" : "between 5 and 10";
    console.log(big); //"less 5"
    let x = 20,
    big = {true: x>10, false : x< =10};
    console.log(big); //"Object {true=true, false=false}"

    4. 變量聲明

    盡管JavaScript會(huì)自動(dòng)講變量上提(hoist),使用該方法可以講所有的變量都在函數(shù)的頭部用一行搞定。

    優(yōu)化錢:

    let x;
    let y;
    let z = 3;

    優(yōu)化后:

    let x, y, z=3;

    5. 賦值語句的簡(jiǎn)化

    簡(jiǎn)化前:

    x=x+1;
    minusCount = minusCount - 1;
    y=y*10;

    簡(jiǎn)化后:

    x++;
    minusCount --;
    y*=10;

    假設(shè)x=10,y=5,那么基本的算術(shù)操作可以使用如下的簡(jiǎn)寫方式:

    x += y // x=15
    x -= y // x=5
    x *= y // x=50
    x /= y // x=2
    x %= y // x=0

    6. 避免使用RegExp對(duì)象

    簡(jiǎn)化前:

    var re = new RegExp("\d+(.)+\d+","igm"),
    result = re.exrc("padding 01234 text text 56789 padding");
    console.log(result);//"01234 text text 56789"

    簡(jiǎn)化后:

    var result = /d+(.)+d+/igm.exec("padding 01234 text text 56789 padding");
    console.log(result); //"01234 text text 56789"

    7. If 條件優(yōu)化

    簡(jiǎn)化前:

    if (likeJavaScript === true)

    簡(jiǎn)化后:

    if (likeJavaScript)

    我們?cè)賮韨€(gè)判斷非真的例子:

    let c;
    if ( c!= true ) {
    // do something...
    }

    簡(jiǎn)化后:

    let c;
    if ( !c ) {
    // do something...
    }

    9. 函數(shù)參數(shù)優(yōu)化

    我個(gè)人傾向于使用獲取對(duì)象元素的方式來訪問函數(shù)參數(shù),當(dāng)然這個(gè)見仁見智啦!

    通常使用的版本:

    function myFunction( myString, myNumber, myObject, myArray, myBoolean ) {
    // do something...
    }
    myFunction( "String", 1, [], {}, true );

    我喜歡的版本:

    function myFunction() {
    /* 注釋部分
    console.log( arguments.length ); // 返回 5
    for ( i = 0; i < arguments.length; i++ ) {
    console.log( typeof arguments[i] ); // 返回 string, number, object, object, boolean
    }
    */
    }
    myFunction( "String", 1, [], {}, true );

    譯者注:原文下方有評(píng)論表示不建議用樓主的方法,使用第一種方法函數(shù)參數(shù)的順序是可以變動(dòng)的,第二種你就要小心了。

    10. charAt()的替代品

    簡(jiǎn)化前:

    "myString".charAt(0);

    簡(jiǎn)化后:

    "myString"[0];//返回'm'

    譯者注:我相信用第一種方法的人已經(jīng)不多了吧!

    11. 函數(shù)調(diào)用還可以更短

    簡(jiǎn)化前:

    function x() {console.log('x')};function y() {console.log('y')};
    let z = 3;
    if (z == 3)
    {
    x();
    } else
    {
    y();
    }

    簡(jiǎn)化后:

    function x() {console.log('x')};function y() {console.log('y')};let z = 3;
    (z==3?x:y)();

    12. 如何優(yōu)雅的表示大數(shù)字

    在JavaScript中,有一個(gè)簡(jiǎn)寫數(shù)字的方法,也許你忽略了。1e7表示10000000。

    簡(jiǎn)化前:

    for (let i = 0; i < 10000; i++) {

    簡(jiǎn)化后:

    for (let i = 0; i < 1e7; i++) {

    總結(jié)

    聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    javascript簡(jiǎn)寫常用的12個(gè)技巧(可以大大減少你的js代碼量)

    javascript簡(jiǎn)寫常用的12個(gè)技巧(可以大大減少你的js代碼量):前言 本文主要給大家分享了javascript簡(jiǎn)寫常用的12個(gè)技巧,無論你是初學(xué)者還是資深人士,都值得一讀!下面話不多說了,來一起看看詳細(xì)的介紹: 1. 空(null, undefined)驗(yàn)證 當(dāng)我們創(chuàng)建了一個(gè)新的變量,我們通常會(huì)去驗(yàn)證該變量的值是否為空(null)或者未
    推薦度:
    標(biāo)簽: js 12 javascript
    • 熱門焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久99精品久久久久久久不卡| 国产乱码精品一品二品| 亚洲级αV无码毛片久久精品| 精品免费视在线观看| 亚洲精品无码久久一线| 国产国产成人久久精品| 97精品国产一区二区三区| 亚洲精品无码你懂的网站| 99国内精品久久久久久久| 538国产精品一区二区在线| 亚洲精品美女久久久久99| 精品精品国产国产| 日韩精品免费视频| 91探花福利精品国产自产在线| 亚洲精品乱码久久久久久久久久久久| 国产午夜精品理论片免费观看 | 2022年国产精品久久久久 | 精品欧美| 国产99视频精品专区| 国产AV无码专区亚洲精品| 亚洲AV无码成人精品区天堂| 久久精品国产亚洲Aⅴ香蕉 | 久久久久成人精品无码中文字幕| 久久精品国产一区二区三区| 99久久精品免费| 2021国产成人精品久久| 华人亚洲欧美精品国产| 91精品美女在线| 国产99视频精品免视看7| 国产精品成人观看视频国产奇米| 精品国产sm捆绑最大网免费站| 日韩精品无码免费一区二区三区| 亚洲av永久无码精品漫画| 一级A毛片免费观看久久精品| 三级国产精品| 亚洲精品国产精品乱码不卞| 亚洲精品无码久久不卡| 一夲道无码人妻精品一区二区| 亚洲国产精品一区二区成人片国内| 亚洲?V无码成人精品区日韩| 热RE99久久精品国产66热|