json类似于数组,但是用花括号来定义。
如果值是字符串,要用引号(但key不能用引号)。
例:var j1 = {a='b'};
alert(j1.a); 或 alert(j1[a]);
如果key是数字,取值时不能用.而要用[],与数组相同。
例:var j2 = {1='a'};
alert(j2[1]);
arguments[] js函数的参数数组内部隐含变量。
function(obj, name, value){}
就相当与
function(){
var obj = arguments[0];
var name = arguments[1];
var value = arguments[2];
}
oDiv.style.width -- 获取行间样式
oDiv.currentStyle.width -- 获取非行间样式(只兼容IE和高版本Chrome)
火狐用getComputedStyle(oDiv,false)--多处都能控制样式,计算机要计算才能决定最终样式.(第二个参数没有用)
JS第二原则:凡是好东西都不兼容。
处理兼容:
if(oDiv.currentStyle){
//IE 只能取单一样式(width,backgroundColor),不能取复合样式(background)
}else{
//FF
}99%兼容问题都用if解决。可以封装成一个函数,避免多处都要if else判断。放到公共库中,总结出自己的库。
splice(起点,长度) 删除
splice(起点,长度,字符s)先删除,再插入
var c = a.concat(b), a,b不会变(数组有concat方法字符串也有.字符串和数组可以做concat,字符串在前就concat成字符串带逗号的,数组在前就concat成数组)
arr.sort();按首字母排
arr.sort(function(n1,n2){n1-n2})当arr中放的是数字数组时,要自己传入比较函数。
a.join('-');把数组join成字符串(数组有join方法,字符串没有)