最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript獲取function所有參數(shù)名的方法

 更新時(shí)間:2015年10月30日 09:36:54   作者:鐵錨  
本文使用javascript獲取function所有參數(shù)名的方法,對(duì)js獲取function所有參數(shù)名感興趣的朋友一起學(xué)習(xí)吧

我寫了一個(gè) JavaScript函數(shù)來解析函數(shù)的參數(shù)名稱, 代碼如下:

function getArgs(func) {
 // 先用正則匹配,取得符合參數(shù)模式的字符串.
 // 第一個(gè)分組是這個(gè): ([^)]*) 非右括號(hào)的任意字符
 var args = func.toString().match(/function\s.*?\(([^)]*)\)/)[1];
 // 用逗號(hào)來分隔參數(shù)(arguments string).
 return args.split(",").map(function(arg) {
  // 去除注釋(inline comments)以及空格
  return arg.replace(/\/\*.*\*\//, "").trim();
 }).filter(function(arg) {
  // 確保沒有 undefined.
  return arg;
 });
}

上面是檢測的函數(shù), 示例代碼如下:

function myCustomFn(arg1, arg2,arg3) {
 // ...
}
// ["arg1", "arg2", "arg3"]
console.log(getArgs(myCustomFn)); 

正則表達(dá)式(regular expression) 是個(gè)好東西嗎? 別的我不知道, 但在適當(dāng)?shù)膱鼍坝闷饋磉€是很給力的!

附帶一個(gè)Java取得當(dāng)前函數(shù)名的方法: Java 在函數(shù)中獲取當(dāng)前函數(shù)的函數(shù)名

public class Test { 
  private String getMethodName() { 
    StackTraceElement[] stacktrace = Thread.currentThread().getStackTrace(); 
    StackTraceElement e = stacktrace[2]; 
    String methodName = e.getMethodName(); 
    return methodName; 
  } 
  public void getXXX() { 
    String methodName = getMethodName(); 
    System.out.println(methodName); 
  } 
  public void getYYY() { 
    String methodName = getMethodName(); 
    System.out.println(methodName); 
  } 
  public static void main(String[] args) { 
    Test test = new Test(); 
    test.getXXX(); 
    test.getYYY(); 
  } 
}

【運(yùn)行結(jié)果】

getXXX 
getYYY 

【注意】

代碼第5行,stacktrace[0].getMethodName() 是 getStackTrace,stacktrace[1].getMethodName() 是 getMethodName,stacktrace[2].getMethodName() 才是調(diào)用 getMethodName 的函數(shù)的函數(shù)名。

// 注意: stacktrace里面的位置;
// [1] 是“getMethodName”, [2] 是調(diào)用此方法的method

public static String getMethodName() { 
  StackTraceElement[] stacktrace = Thread.currentThread().getStackTrace(); 
  StackTraceElement e = stacktrace[2]; 
  String methodName = e.getMethodName(); 
  return methodName; 
}

以上內(nèi)容是本文給大家介紹的js獲取function所有參數(shù)名的方法,本文寫的不好還請(qǐng)大家見諒,歡迎大家提出寶貴意見。

相關(guān)文章

  • layui-table表復(fù)選框勾選的所有行數(shù)據(jù)獲取的例子

    layui-table表復(fù)選框勾選的所有行數(shù)據(jù)獲取的例子

    今天小編就為大家分享一篇layui-table表復(fù)選框勾選的所有行數(shù)據(jù)獲取的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • JavaScript省市級(jí)聯(lián)下拉菜單實(shí)例

    JavaScript省市級(jí)聯(lián)下拉菜單實(shí)例

    這篇文章主要為大家詳細(xì)介紹了JavaScript省市級(jí)聯(lián)下拉菜單實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • 深入理解JavaScript?變量對(duì)象

    深入理解JavaScript?變量對(duì)象

    變量對(duì)象是與執(zhí)行上下文相關(guān)的數(shù)據(jù)作用域,存儲(chǔ)了在上下文中定義的變量和函數(shù)聲明,本文主要介紹了JavaScript?變量對(duì)象,具有一定的參考價(jià)值,感興趣的可以了解一下
    2022-05-05
  • js和jquery如何獲取圖片真實(shí)的寬度和高度

    js和jquery如何獲取圖片真實(shí)的寬度和高度

    按照插入的圖片的尺寸來判斷圖片是橫圖還是豎圖。然后判斷過后給予不同的展示方式,下面為大家介紹下js和jquery如何獲取圖片真實(shí)的寬度和高度
    2014-09-09
  • JS實(shí)現(xiàn)根據(jù)出生年月計(jì)算年齡

    JS實(shí)現(xiàn)根據(jù)出生年月計(jì)算年齡

    本篇文章主要是對(duì)利用JS實(shí)現(xiàn)根據(jù)出生年月計(jì)算年齡的示例代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助
    2014-01-01
  • Javascript中數(shù)組sort和reverse用法分析

    Javascript中數(shù)組sort和reverse用法分析

    這篇文章主要介紹了Javascript中數(shù)組sort和reverse用法,實(shí)例分析了sort和reverse使用時(shí)的注意事項(xiàng)與相關(guān)技巧,具有不錯(cuò)的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • js內(nèi)置對(duì)象處理_打印學(xué)生成績單的簡單實(shí)現(xiàn)

    js內(nèi)置對(duì)象處理_打印學(xué)生成績單的簡單實(shí)現(xiàn)

    下面小編就為大家?guī)硪黄猨s內(nèi)置對(duì)象處理_打印學(xué)生成績單的簡單實(shí)現(xiàn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-09-09
  • Echarts.js無法引入問題解決方案

    Echarts.js無法引入問題解決方案

    這篇文章主要介紹了Echarts.js無法引入問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 小程序?qū)崿F(xiàn)頁面給自定義組件賦值

    小程序?qū)崿F(xiàn)頁面給自定義組件賦值

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)頁面給自定義組件賦值,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • JavaScript筆記之?dāng)?shù)據(jù)屬性和存儲(chǔ)器屬性

    JavaScript筆記之?dāng)?shù)據(jù)屬性和存儲(chǔ)器屬性

    本文給大家介紹js數(shù)據(jù)屬性和存儲(chǔ)器屬性,及兩種屬性的區(qū)別,對(duì)js數(shù)據(jù)屬性存儲(chǔ)器屬性相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)
    2016-03-03

最新評(píng)論

甘南县| 伊春市| 苏尼特右旗| 岫岩| 西丰县| 泗洪县| 都兰县| 乌什县| 旬邑县| 稷山县| 绵竹市| 韶关市| 宣武区| 丰镇市| 洪雅县| 闸北区| 秭归县| 乐都县| 广昌县| 双柏县| 阿拉善右旗| 仁怀市| 如皋市| 铜陵市| 井冈山市| 福泉市| 洞口县| 信阳市| 陆河县| 乐至县| 昌都县| 万山特区| 腾冲县| 宁南县| 霸州市| 林甸县| 志丹县| 临颍县| 城固县| 徐闻县| 拉孜县|