week1.
转字符串:XX.toString();
字符串 to 数字:parseInt/Float(str);数字:Number(xx);
转布尔: Boolean(xx);
NaN,参与任何比较运算结果都为false,解决:!isNaN(x)
三目:条件1?操作1:条件2?操作2:条件3?操作3:默认操作;
获取第一个字的ascii码:var ascii=str.charCodeAt(0);
week2:
函数创建: function 函数名(形参,...){ 函数体 return 返回值; } 调用:函数名(实参,...);
声明提前:
在程序执行之前,悄悄将var声明的变量和function【声明】的函数, 集中提前到当前作用域的顶部,但是赋值留在原地,变量比函数更轻
编码,解码: 编码:var code=encodeURIComponent("str");
解码:var 原文=decodeURIComponent(code);
switch...case结构:
语法:
switch(变量/表达式){
case 值1:
操作1;
break;
case 值2:
操作2;
break;
default:
默认操作;
}
week3:
循环:
var 变量=几;
do{循环体; 变量变化 }while(循环条件)
数组的基础:
关联hash数组:下标是可以自定义的
创建:var arr=[]; arr["自定义下标"]=值;
访问:arr["自定义下标"]
特殊:遍历:for in循环
for(var i in arr){ i;//当前次的下标,arr[i];//当前次的元素 }
数组转为字符串:var str=arr.join("自定义连接符");
拼接数组: var newArr=arr.concat(值1,arr2,...);
拼接数组: var newArr=arr.concat(值1,arr2,...);
删除、插入、替换: var deletes=arr.splice(starti,n,值1,....);
翻转数组:arr.reverse();
week4:
Array API:
1、排序:arr.sort()
按数字排序:arr.sort(function(a,b){return a-b})
降序排序:arr.sort(function(a,b){return b-a})
2、栈和队列:
arr.unshift(值,...);
var first=arr.shift();
arr.push(值,...);
var last=arr.pop();
二维数组:
创建:var arr=[[],[],[],[]]; 访问:arr[r][c];
遍历:
for(var r=0;r<arr.length;r++){
for(var c=0;c<arr[r].length;c++){
arr[r][c];//当前次元素
} }