婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 利用noesis.Javascript開源組件.Net中執(zhí)行javascript腳本

利用noesis.Javascript開源組件.Net中執(zhí)行javascript腳本

熱門標(biāo)簽:宿遷智能外呼系統(tǒng)排名 400電話辦理信任翰諾科技 廣州銷售外呼系統(tǒng)定制 福州人工智能電銷機(jī)器人加盟 電銷機(jī)器人 數(shù)據(jù) ai電銷機(jī)器人對(duì)貸款有幫助嗎 云狐人工智能電話機(jī)器人 地圖標(biāo)注多少錢一張 怎樣給陜西地圖標(biāo)注顏色

界面如下:

然后,click filter button后的UI:

看,篩選出來(lái)了,代碼如下(js能調(diào)C#寫的UserInfo類的各個(gè)屬性)

復(fù)制代碼 代碼如下:

public class UserInfo
    {
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public int Age { get; set; }
        public override string ToString()
        {
            return string.Format("{0}, {1}: {2}", FirstName, LastName, Age);
        }
    }

private void btnSearch_Click(object sender, EventArgs e)
        {
            ListUserInfo> users = FilterUsers(txtFilter.Text.Trim());
            lstUsers.DataSource = users;
        }

        private ListUserInfo> FilterUsers(string jsFilter)
        {
            ListUserInfo> results = new ListUserInfo>();
            if (jsFilter.Trim().Length == 0)
                return this.users;

            try
            {
                using (JavascriptContext context = new JavascriptContext())
                {
                    foreach (UserInfo user in this.users)
                    {
                        context.SetParameter("user", user);
                        context.SetParameter("isInclude", false);
                        string js = string.Format(@"
                                                if({0})
                                                    isInclude=true;
                                                else
                                                    isInclude=false;", jsFilter);
                        context.Run(js);
                        bool isInclude = (bool)context.GetParameter("isInclude");
                        if (isInclude)
                            results.Add(user);
                    }
                }
            }
            catch
            {
                txtFilter.Focus();
                txtFilter.SelectAll();
                return this.users;
            }

            return results;
        }

我們來(lái)看看效率:

復(fù)制代碼 代碼如下:

private void btnTest_Click(object sender, EventArgs e)
        {
            using (JavascriptContext context = new JavascriptContext())
            {
                Stopwatch sw = new Stopwatch();
                sw.Start();
                int i=1000000;
                while(i-- > 0)
                {
                    context.SetParameter("ii", 1);
                    context.SetParameter("jj", 2);
                    context.SetParameter("sum", 0);
                    string js = string.Format(@"sum=ii+jj;");
                    context.Run(js);
                    int sum = (int)context.GetParameter("sum");
                }
                sw.Stop();

                long useJS_Total = sw.ElapsedMilliseconds;
                float useJS_Average = ((float)sw.ElapsedMilliseconds) / 1000000;

                sw.Reset();
                sw.Start();
                i = 1000000;
                while (i-- > 0)
                {
                    int ii = 1;
                    int jj = 2;
                    int sum = 0;
                    sum = ii + jj;
                }
                sw.Stop();

                long nouseJS_Total = sw.ElapsedMilliseconds;
                float nouseJS_Average = ((float)sw.ElapsedMilliseconds) / 1000000;

                string msg = "";
                msg += string.Format("useJS_Total: {0}\r\n", useJS_Total);
                msg += string.Format("useJS_Average: {0}\r\n\r\n\r\n", useJS_Average);
                msg += string.Format("nouseJS_Total: {0}\r\n", nouseJS_Total);
                msg += string.Format("nouseJS_Average: {0}\r\n\r\n\r\n", nouseJS_Average);

                MessageBox.Show(msg);
            }
        }

結(jié)果(上面的是通過(guò)js引擎計(jì)算的時(shí)間、下面的是純C#計(jì)算時(shí)間,悲劇啊):這個(gè)Noesis.Javascript只適用于性能要求不高的場(chǎng)合

您可能感興趣的文章:
  • 詳解Chart.js輕量級(jí)圖表庫(kù)的使用經(jīng)驗(yàn)
  • 常用的9個(gè)JavaScript圖表庫(kù)詳解
  • 使用Chart.js圖表庫(kù)制作漂亮的響應(yīng)式表單
  • JavaScript可視化圖表庫(kù)D3.js API中文參考
  • javaScript矢量圖表庫(kù)-gRaphael幾行代碼實(shí)現(xiàn)精美的條形圖/餅圖/點(diǎn)圖/曲線圖
  • Node.js開源應(yīng)用框架HapiJS介紹
  • 開源的javascript項(xiàng)目Kissy介紹
  • Java中使用開源庫(kù)JSoup解析HTML文件實(shí)例
  • jQuery EasyUI 開源插件套裝 完全替代ExtJS
  • 優(yōu)秀js開源框架-jQuery使用手冊(cè)(1)
  • 一個(gè)加密JavaScript的開源工具PACKER2.0.2
  • 4個(gè)頂級(jí)開源JavaScript圖表庫(kù)

標(biāo)簽:新疆 延安 曲靖 綿陽(yáng) 宜春 大興安嶺 黃南 焦作

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《利用noesis.Javascript開源組件.Net中執(zhí)行javascript腳本》,本文關(guān)鍵詞  利用,noesis.Javascript,開源,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《利用noesis.Javascript開源組件.Net中執(zhí)行javascript腳本》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于利用noesis.Javascript開源組件.Net中執(zhí)行javascript腳本的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 依兰县| 车险| 宝应县| 宜州市| 比如县| 许昌县| 广德县| 赤城县| 奉新县| 祁东县| 泰来县| 扎兰屯市| 甘洛县| 资兴市| 桂平市| 夏邑县| 岚皋县| 富民县| 镇平县| 克拉玛依市| 襄樊市| 钦州市| 瑞金市| 新乡县| 宣城市| 开原市| 和顺县| 文水县| 泗洪县| 德阳市| 海宁市| 泗水县| 福鼎市| 远安县| 屏东市| 宝清县| 玉山县| 张家川| 潜江市| 靖江市| 磐安县|