A.我今天学了什么
1.首字母转化
var str = "how are you"
var reg = /(^|\s)(\w)/g
// var s = str.match(reg)
var s = str.replace(reg,function(m,p1,p2){
return p1+p2.toUpperCase();
})
/*
函数参数的规定:
1. 第一个参数为每次匹配的全文本($&)。
2. 中间参数为子表达式匹配字符串,个数不限.( $i (i:1-99))
3. 倒数第二个参数为匹配文本字符串的匹配下标位置。
4. 最后一个参数表示字符串本身。
2.事件委托
*/
- 我是第1个li标签
- 我是第2个li标签
- 我是第3个li标签
- 我是第4个li标签
3.键盘事件
document.onkeydown=function(event){
var e = event || window.event;
// if(e && e.keyCode==27){ // 按 Esc
// //要做的事情
// }
// if(e && e.keyCode==113){ // 按 F2
// //要做的事情
// }
//
// ctrlKey shiftKey altKey 返回true;
//
if(e.ctrlKey && e.keyCode == 13){
alert(1)
}
// if(e && e.keyCode==38){ // enter 键
// alert(1)
// }
//
// alert(e.keyCode)
};
document.onclick = function (){
window.location.hash = "#a1"
}
4.分页
// var str = window.location.search.slice(1);
// var s1 = str.replace(/=/,"\":\"")
// // var s2 ="\"" + s1 + "\"";
// // es6方法 不用字符串拼接 就 `--${变量}----`
// var s2 =`{"${s1}"}`
// // 字符串转为对象
// var obj = JSON.parse(s2)["a"]
var lis = document.getElementsByTagName("li")
var pageSize = 25;
var page = Math.ceil(lis.length/pageSize)
// 页码
for(var i =1;i<=page;i++){
var a = document.createElement("a");
a.innerHTML = i;
a.href = "09-分页.html?a="+i;
document.getElementById("d").appendChild(a)
}
// 获取页码
var PAGE = getPage("a");
// 刚开始 页面中没有 location.search 需要做判断
if(!PAGE){
PAGE = 1;
}
var start = (PAGE-1)*pageSize; //(1-1)10 从0开始
var end = start+pageSize; //(1)10 到10结束
for(var i = start;i
5.JSON.parse
/*JSON.parse用于从一个字符串解析出对象,如*/
// var str = '{"ne":"张三"}'
// var obj = JSON.parse(str)
// JSON.parse("[1, 2, 3, 4, ]");
// JSON.parse('{"foo" : 1, }');
/*JSON.stringify()用于从一个对象解析出字符串,如*/
// var obj = {
// "ne":"张三",
// "age":20
// }
// var str = JSON.stringify(obj)
//
// 可以解析 执行 字符串
// eval()