设置样式:
设置多个样式
setStyle(obj,json);
只设置一个样式
setStyle(obj,name,value)
function setStyle() {
// arguments 实参的参数数组
var obj = arguments[0];
if (arguments.length == 2) {
// 设置多个
var json = arguments[1];
for (var name in json) {
obj.style[name] = json[name];
}
} else if (arguments.length == 3) {
// 设置一个样式
var name = arguments[1];
var value = arguments[2];
obj.style[name] = value;
}
}
JS小特性:
预解析:预先解析一些东西
变量的定义,函数的定义 会预解析
预解析的作用范围:
只会在本作用域范围之内
a). 函数
b). script
面试题:
引用:跟对象打交道,只有对象之间才有引用
对象(oDate,oDiv,json,arr...) 指的是同一个东西
var json = {a:1,b:2};
var json2 = json;
json2.a = 101;
console.log(json); // {a :101 ,b:2}
字符串其他的东西:
var str = 'abcdef';
str.charAt(索引值);
str.charCodeAt(索引值); -> 字母对应的编码
计算机的编码(16进制编码)
0x4e00 -> 一
0x9fa5 -> 龥 yu
String.fromCharCode(编码); -> 对应的字母(词)
统一编码:
unicode
utf-8/16/32
gb2312
\u4e00 一
\u9fa5 龥 yu
求字节长度 ?
字节
M
K
B bytes
跟编码有关系:
UTF-8 -> 一个汉字对应3个字节
gb2312 -> 一个汉字对应2个字节
求字节长度函数:
getByLen(str);
getByLen(str,type);
in:
判断json里面有没有某一个属性?
var json = {a:1, b:2};
'xxx' in json
true: 存在
false:不存在
全局的东西属于window
异常:
异常捕获
try {
// js
} catch(ex){
// 补救的代码
// 错误提示信息
}
获取异常信息:
ex.message
用处:
a). 救急 屏蔽错误信息
b). 替代 if
try{}catch(ex){} 尽量少用,性能略低
定义变量:
var a = 12;
a = 12;
var a = 1;
var b = 1;
var c = 1;
var d = 1;
var a = b = c = d = 1; 连等 ×
关于定义变量:
a). 定义变量不带var 会变成全局的
b). 在函数里面定义变量使用连等,第一个变量是局部变量,从第二个以后都是全局的变量
逗号:
var arr = [1,2,3];
var json = {a:1,b:2,c:3};
, 可以作为运算符使用
var a = (12);
*** 逗号运算符一最后一个为准
if (1,0,'abc',NaN) {
alert('真');
} else {
alert('假');
}
//假
严格模式:
告诉浏览器严格检查你的代码
开启一个严格模式:
'use strict'
好处:
a). 定义变量不带var报错
b). 在if while for 定义一个函数
作用范围:
a). 冲不出script标签
b). 作用于函数内
c). 作用于js文件
建议大家以后js文件最好加上严格模式