如何用 ajax 中的其他方法替换 eval 函数?
How can replace the eval function with other method in the ajax?
我读过一些 material ,它说 eval 是邪恶的,eval 可以用一些方法替换。
下面的代码片段可以调用sinajs的股票价格api,当你在input
中输入某个公司的代码时,它的价格会显示在console.log的window中,例如输入600020
.
function stock(){
ticker = $("#code").val();
$.ajax({
type : "GET",
url : "http://hq.sinajs.cn/list=sh" + ticker,
dataType : "script",
cache : "false",
timeout : 2000,
success : function(data) {
sname = eval("hq_str_sh" + ticker);
console.log(sname);},
error : function() {alert("wrong");}
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
tiker:
<input id="code" type="text" size="10">
<input id="Search" type="button" onclick="stock()" value="query">
如何用以下代码片段的某些方法替换 eval 函数?
success : function(data) {
sname = eval("hq_str_sh" + ticker);
console.log(sname);},
这是我的尝试:
success : function(data) {
window["myTicker"] = "hq_str_sh" + ticker;
console.log(myTicker);},
失败。
您可以解析响应。
data.substring(4, c.length - 1).split("=")[1];
这将是经过 var 部分但没有尾随 ; 的响应,将其拆分在 = 符号上,数据是数组的第二个元素。
console.log(window["hq_str_sh" + 代码])
我读过一些 material ,它说 eval 是邪恶的,eval 可以用一些方法替换。
下面的代码片段可以调用sinajs的股票价格api,当你在input
中输入某个公司的代码时,它的价格会显示在console.log的window中,例如输入600020
.
function stock(){
ticker = $("#code").val();
$.ajax({
type : "GET",
url : "http://hq.sinajs.cn/list=sh" + ticker,
dataType : "script",
cache : "false",
timeout : 2000,
success : function(data) {
sname = eval("hq_str_sh" + ticker);
console.log(sname);},
error : function() {alert("wrong");}
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
tiker:
<input id="code" type="text" size="10">
<input id="Search" type="button" onclick="stock()" value="query">
如何用以下代码片段的某些方法替换 eval 函数?
success : function(data) {
sname = eval("hq_str_sh" + ticker);
console.log(sname);},
这是我的尝试:
success : function(data) {
window["myTicker"] = "hq_str_sh" + ticker;
console.log(myTicker);},
失败。
您可以解析响应。
data.substring(4, c.length - 1).split("=")[1];
这将是经过 var 部分但没有尾随 ; 的响应,将其拆分在 = 符号上,数据是数组的第二个元素。
console.log(window["hq_str_sh" + 代码])