Raj*_*esh 0 javascript c# arrays jquery
首先,我是Javascript的新手.我正在使用一个在运行时获取其值的数组
var tablehash = [CS: "CS", tbl_master: "tbl_master"]
Run Code Online (Sandbox Code Playgroud)
我必须获取数组中的值以便与我尝试过的值进行比较
var valtocompare = tablehash ["CS"];
Run Code Online (Sandbox Code Playgroud)
但是它给了我错误,所以我手动测试了上面的数组
var tablehash = {CS: "CS", tbl_master: "tbl_master"}
Run Code Online (Sandbox Code Playgroud)
并获取正确的值
我的问题是为什么[]我不能从数组中获取具有{}开始和结束符号的值,但我可以从具有开始和结束符号的数组中获取
编辑:在运行期间var tablehash = [CS: "CS", tbl_master: "tbl_master"].从tablehash[xx[0]]=xx[0];我的jquery中的行获取值,它只包含[]我可以做的事情
请有人指出我做错了什么.
未捕获的SyntaxError:jquery中的意外标识符问题
我可以问一个新问题我在这个帖子中添加了我的新问题,因为下面提到的脚本在同一个Jquery库中.
我正在jQuery从我的页面调用下面提到的库函数,但在评估我发送的JSON字符串的行中我得到了未捕获的语法错误:意外的标识符
从页面调用的函数
function BindSearchedQueryData(JsonString) {
$('.sqlbuild').loadSQB(JsonString);
}
Run Code Online (Sandbox Code Playgroud)
该loadSQB是
loadSQB: function (jsonstr) {
var $tt = this[0];
$('.sqlcolumn').remove();
$('.sqlwhere').remove();
$('.sqlgroup').remove();
$('.sqlsort').remove();
var j=eval('(' + jsonstr + ')'); //Getting Error in this line
var coldiv =$(".addnewsqlcolumn");
var sortdiv =$('.addnewsqlsort');
var groupdiv=$('.addnewsqlgroup');
var wherediv=$('.addnewsqlwhere');
/*rebuild col data*/
for(var i=0;i<j.columndata.length;i++){
//j.columndata[i].columnslot, j.columndata[i].columnvalue
coldiv[0].opts.onselect(j.columndata[i].columnslot,coldiv,{columnas:j.columndata[i].columnas});
}
/*rebuild sort data*/
for(var i=0;i<j.sortdata.length;i++){
//j.sortdata[i].columnslot, j.sortdata[i].columnas
sortdiv[0].opts.onselect(j.sortdata[i].columnslot,sortdiv,{columnas:j.sortdata[i].columnas});
}
/*rebuild group by data*/
for(var i=0;i<j.groupdata.length;i++){
//j.groupdata[i].columnslot,
groupdiv[0].opts.onselect(j.groupdata[i].columnslot,groupdiv,null);
}
/*rebuild where data*/
for(var i=0;i<j.wheredata.length;i++){
//j.wheredata[i].columnslot, j.wheredata[i].opslot,j.wheredata[i].chainslot,j.wheredata[i].columnvalue
wherediv[0].opts.onselect(j.wheredata[i].columnslot,wherediv,{columnslot:j.wheredata[i].columnslot,opslot:j.wheredata[i].opslot,chainslot:j.wheredata[i].chainslot,columnvalue:j.wheredata[i].columnvalue});
}
}
Run Code Online (Sandbox Code Playgroud)
请大家指出我这里出了什么问题
Javascript没有关联数组,即你不能拥有
var tablehash = [CS: "CS", tbl_master: "tbl_master"].
但你可以拥有
var tablehash = {CS: "CS", tbl_master: "tbl_master"},这是一个有效的对象.
执行此操作后,您可以使用object.key语法访问值.
所以,价值tablehash.CS就是CS.
PS - 在你的ide /编辑器中使用linter.