2.9 रणनीति रोबोट के संचालन में डिबगिंग (JS - eval फ़ंक्शन का कुशल उपयोग)

लेखक:छोटे सपने, बनाया गयाः 2016-11-15 14:54:40, अद्यतन किया गयाः 2017-10-11 10:21:40

इंटरैक्शन रणनीति रोबोट के संचालन में डिबगिंग (JS eval फ़ंक्शन का आकस्मिक उपयोग)

  • आइए पहले JS में eval फ़ंक्शन का परिचय देंः

    w3schoolimg img

    अब जब आप eval function के बारे में जानते हैं, तो आप देख सकते हैं कि क्या यह रणनीति इंटरैक्शन में लागू होता है!

  • रणनीतिक बातचीत में कार्यान्वयनः

    नीति इंटरैक्शन के लिए उपयोगकर्ता को एपीआई गेट कमांड फ़ंक्शन के रिटर्न मानों को संभालने की आवश्यकता होती है।

var cmd = GetCommand();             // 调用API  获取界面交互控件的消息。 
if (cmd) {                          // 判断是否有消息
    var js = cmd.split(':', 2)[1];  // 分割 返回的消息 字符串, 限制返回2个, 把索引为1的 元素 赋值给 名为js 的变量 
    Log("执行调试代码:", js);         // 输出 执行的代码
    try {                           // 异常检测
        eval(js);                   // 执行 eval函数, 该函数执行传入的参数(代码)。
    } catch(e) {                    // 抛出异常
        Log("Exception", e);        // 输出错误信息
    }
}

नीचे हम इस कोड को एक नीति में लिखते हैं और इंटरैक्टिव इंटरफ़ेस नियंत्रण को कॉन्फ़िगर करते हैं। पूरी टेस्टिंग कोडः

var price = 0;
var amount = 0;
function main() {
    Log("初始 price:", price, "初始 amount", amount);
    while(true){
        var cmd = GetCommand();             // 调用API  获取界面交互控件的消息。 
        if (cmd) {                          // 判断是否有消息
            var js = cmd.split(':', 2)[1];  // 分割 返回的消息 字符串, 限制返回2个, 把索引为1的 元素 赋值给 名为js 的变量 
            Log("执行调试代码:", js);         // 输出 执行的代码
            try {                           // 异常检测
                eval(js);                   // 执行 eval函数, 该函数执行传入的参数(代码)。
            } catch(e) {                    // 抛出异常
                Log("Exception", e);        // 输出错误信息
            }
        }
        Sleep(1000);
    }
}

इंटरैक्टिव कंट्रोल जोड़ेंःimg

  • चलिएः

    imgहम वैश्विक चर को बदलते हैं price, amount.imgअगर यह गलत कोड है, तो यह एक असामान्यता को फेंक देता हैःimg

अधिक

हल्के बादलयह एक बहुत अच्छा तरीका है कि आप अपने दोस्तों के साथ बातचीत कर सकते हैं।