作者ChowMein (杉斑加纹)
看板Ajax
标题Re: [问题] JSON 使用问题(PHP 阵列 )
时间Mon Aug 22 14:29:15 2011
※ 引述《coldollsheep (加油加油^^)》之铭言:
: 各位大大好
: 我最近遇到一个问题 希望闲逛至此的朋友可以指导一二
: 我在写一个东西
: 就是 每一秒 把一张图 复制到 某一个座标
: 座标的X 跟 Y 都是随机的一到五的正整数 也就是有 25个可能性
: 但是在这个随机的过程中 有时会重复 例如说两次都是 (2,3)
: 那这样流程就不是我要的
: -----
: 如果是PHP,我会写一个阵列 $tmp[xy] = '';
: 每一次产生 xy 的时候我都会 array_key_exists一次。
: 判断键值是没有重复的
: OK没重复 我就会把加到阵列里面。
: -----
: 希望前辈可以指导 以此逻辑js该怎麽处理? 我希望可以应用到JSON
: -----
: 而我自己尝试是卡在哪个点呢?
: 我卡在我作出了xy之後 假设x=1,y=2
: key = x+'_'+y;
: tmpjson = { key : key }; //我不知道第二组xy产生之後怎麽加入tmpjson
: //会把第一组覆盖
: //我也不知道怎麽把它叫出来看看
: alert(tmpjson.key) 有成功显示出来 1_2
: //但是我以为key是变数阿...不是应该tmpjson.1_2?
: //第三个不会就是 我不知道怎麽判断有无此键值的JSON
: //目前想到 if (tmpjosn.key) 但是因为第二个问题 我觉得我这个方法不可行...
: //希望有人可以解答我 谢谢大大
: -----
: 我知道我第三个问题怎麽问了
: 我要怎麽怎麽判断tmpjson.某KEY的值是否存在
: 当那个某值是变数...XD
你的问题有几句我看不懂, 但我想你对 javascript 的 object 不熟,
var tmpjson = { "1_2" : "1_2" },
x = 3,
y = 4,
newKey = x + '_' + y;
tmpjson[newKey] = newKey ; // 应该是问题一
$( '#tmp' ).html( tmpjson[newKey] ); // 问题二
if ( "1_2" in tmpjson ) { // 问题三
alert( "true" );
}
if ( newKey in tmpjson ) {
alert( "true" );
}
delete tmpjson["1_2"];
alert(tmpjson["1_2"]);
http://jsfiddle.net/STjAC/
建议,
变数名称开头避免是数字, 不然要用 [] 且加上 ""
如果变数的值没有用, 不设也没关系, 设成 tmpjson[key] = '' 或 = 0,
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 112.104.126.131
※ 编辑: ChowMein 来自: 112.104.126.131 (08/22 14:30)