1.********对象数组操作:
var user={};
user={"name":"张三","age":"10"};
var users=[];
users=[{"name":"李四","age":"11"},{"name":"王五","age":"12"}];
//添加 最后位置添加
users.push(user);
//删除 :splice(index,len) (位置,删除数量)
users.splice(0,1);
//删除替换添加 : splice(index,len,[item]) 用 user 替换删除的,可用一条记录替换多条,删除数量为0时替换变为指定位置添加
users.splice(0,1,user);
//删除:delete delete删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变
如:
var arr = ['a','b','c','d'];
delete arr[1] //['a', ,'c','d'] 中间出现两个逗号,数组长度不变,有一项为undefined
1.2 遍历数组
$.each(arr, function(i, val) {
console.log(val);
});
1.3连接数组: (该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本)
arr.concat(arr2);
arr.concat(arr2,arr3);
2.*******
判断函数存在:
if(typeof (JLBFormMake.defaults.fn_SelectClientAfter) == "function")
判断参数是否存在
function wopen(w, h)
{
if (w == null) ----可判断是否传了参数
if (h == undefined)----这个也可以判断 (不带引号,typeof(h)=="undefined" 需要带引号)
}
判断对象存在: typeof 返回类型为字符串
if (typeof params != "undefined")
if (typeof (params) != "object")
判断有无节点
if ($('#w').size() == 0) {
$('body').append('<div id = "w"></div>');
判断对象有内容
if (params.length > 0)
js 判断 对象 中 存在属性
if (model.hasOwnProperty("name"))
var m = model.name;
js对象的深度克隆 (用js原生的json序列化的方式)
var obj2 = JSON.parse(JSON.stringify(obj));
3.******************
//格式化小数位数(可传 "1.",".1",10. ,.10 )
function formatDigit(val, dig) {
if (val == null || val == "") val = 0;
var rst = parseFloat(val).toFixed(dig);
if (rst == "NaN") rst = formatDigit(0, dig);
return rst;//返回字符串
//return parseFloat(rst);//返回数值
}