JQuery插件中设置属性的变量
时间:2011-10-25
来源:互联网
var aa = {
dateFormat: 'yy-mm-dd',
monthNamesShort:['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'],
changeMonth: true,
changeYear: true,
dayNamesMin: ['日','一','二','三','四','五','六'],
yearRange: '1910:2011'
};
问题:
1、变量aa是什么类型?
2、如monthNamesShort或dayNamesMin他们的值是什么类型?数组吗?数组不是需要用new Array()定义的吗?
谢谢!
作者: wsy87217 发布时间: 2011-10-25
2,monthNamesShort或dayNamesMin都是数组,JS是弱类型,不需要new Array(),new Object()这种形式
定义字符串 var str = "123";
定义数值 var i = 1;
定义数组 var arr = [1,2];
定义对象 var obj = {};
作者: liangws 发布时间: 2011-10-25
1, aa是json
2,monthNamesShort或dayNamesMin都是数组,JS是弱类型,不需要new Array(),new Object()这种形式
定义字符串 var str = "123";
定义数值 var i = 1;
定义数组 var arr = [1,2];
定义对象 var obj = {};
那如果aa是json数据的话,
var china_m = {'01':'一','02':'二','03':'三'}
$('#abc').val(china_m[01]);
能用china_m[01]这种方式取值吗?不是应该先用eval()函数转义一下吗?
作者: wsy87217 发布时间: 2011-10-25
如
var china_m = {'01':'一','02':'二','03':'三'}
请用china_m['01']
否则
var china_m = {'a':'一','b':'二','c':'三'}
china_m.a或者china_m['a']都可以
作者: liangws 发布时间: 2011-10-25
1、变量aa是什么类型?
2、如monthNamesShort或dayNamesMin他们的值是什么类型?数组吗?数组不是需要用new Array()定义的吗?
回答:
该变量是使用json语法规则描述的。json语法规则如下:
var aa={
"名称1":"值1",
"名称2":"值2"
}
其中,JSON 值可以是:
1.数字(整数或浮点数)
2.字符串(在双引号中)
3.逻辑值(true 或 false)
4.数组(在方括号中)
5.对象(在花括号中)
6.null
作者: crystal1205 发布时间: 2011-10-25
如果json数据的属性名能转换成数值的情况
如
var china_m = {'01':'一','02':'二','03':'三'}
请用china_m['01']
否则
var china_m = {'a':'一','b':'二','c':'三'}
china_m.a或者china_m['a']都可以
哦,非常感谢你的回答!
再问一下,那为什么很多教程上在做Ajax(JSON传值)接收值处理的时候,都用eval()先转义一下呢?按你的解释直接用不就可以了吗?
作者: wsy87217 发布时间: 2011-10-25
引用 3 楼 liangws 的回复:
如果json数据的属性名能转换成数值的情况
如
var china_m = {'01':'一','02':'二','03':'三'}
请用china_m['01']
否则
var china_m = {'a':'一','b':'二','c':'三'}
china_m.a或者china_m['a']都可以
哦,非常感谢你的回答!
再……
因为ajax返回的是一个字符串,并不是一个json对象,所以要eval把他转换成一个json对象后才能正常使用
作者: liangws 发布时间: 2011-10-25
作者: axiheyhey 发布时间: 2011-10-25
引用 5 楼 wsy87217 的回复:
引用 3 楼 liangws 的回复:
如果json数据的属性名能转换成数值的情况
如
var china_m = {'01':'一','02':'二','03':'三'}
请用china_m['01']
否则
var china_m = {'a':'一','b':'二','c':'三'}
china_m.a或者china_m['……
我是用的php,我每次把值返回给JS的时候都是用json_encode()函数把一个字符串转换成JSON格式,那时候上课的时候,也就是说JS接到的返回值已经是JSON字符串了,我记得老师也是说eval是解译JSON数据的啊???
作者: wsy87217 发布时间: 2011-10-25
引用 6 楼 liangws 的回复:
引用 5 楼 wsy87217 的回复:
引用 3 楼 liangws 的回复:
如果json数据的属性名能转换成数值的情况
如
var china_m = {'01':'一','02':'二','03':'三'}
请用china_m['01']
否则
var china_m = {'a':'一','b':'二','c':'三'……
这样把,你返回的时候typeof一下,就知道返回的是对象还是字符串了
function(data){
alert(typeof data)
}
作者: liangws 发布时间: 2011-10-25
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28