概述
1、弱类型:var
强类型:int string
2、命名习惯
类型 | 前缀 | 例子 |
数组 | a | aArray |
布尔值 | b | bMale |
浮点 | f | fTax |
函数 | fn | fnSwap |
整型 | i | iAge |
对象 | o | oCar |
正则 | re | rePattern |
字符串 | s | sUniversity |
3、6.02e23=6.02*10²³; 6.02e-32=6.02*10-32 ; .333=0.333
4、字符串使用
var sStr="hello world"
console.log(sStr.length);
//11
字符长度
console.log(sStr.charAt(4));
//o
获取索引为3 位置为4的字符
console.log(sStr.substring(1));
//ello world截取1到最后的位置
console.log(sStr.substring(1,4));//ell
截取从1的位置截取到4,但不包括4。
console.log(sStr.slice(1,4));
//ell
从1到4但不包括4,支持负数
sStr.slice(-3,-1);//rl
console.log(sStr.substr(1,4))
//ello 从索引为1的位置截取4个长度
console.log(sStr.indexOf("r"))
//8
r第一次出现的位置
console.log(sStr.indexOf('l'),4);//9
l从索引4开始数,第一次出现的位置
console.log(sStr.lastIndexOf("o"));//7
最后一次出现的索引
console.log(sStr.split(' '));
//["hello", "world"] 以空格为分隔符
console.log(sStr.toUpperCase());
//HELLO WORLD
console.log(sStr.toLowerCase());
//hello world
console.log(sStr.replace("e","*"));//h*llo world
console.log(sStr[0]);
//h 字符串可以当做只读数组
console.log(sStr[sStr.length-1]);
//d
var arr = Array(2);
arr[0]="john";
arr[1]="tom";
console.log(arr.join('-'));//john-tom
console.log(Number(true)); //1
console.log(Boolean(null));//false
5、表达式和运算符
in var o={x:1,y:2};
delete o.x;
console.log('y' in o);//ture
console.log('x' in o);//fasle
instanceof var d = new Date();
if(d instanceof Date){
console.log('1');
}else{
console.log('2');
}
6、语句
for; break; continue; return
var iSum = 0;
for (var i = 1; i < 101; i++) {
if( i==10){
//
break;//跳出整个for循环体
// continue;//只有当i==5时不执行,其他继续
// return;//跳出整个方法体或者返回一个值
alert(addNum(5));
}
iSum += i;
}
alert(iSum);
}
function addNum(i) {
var j = i + 5;
return j;
if...else; prompt; isNaN; Number;parseInt
猜数字游戏
var iNum= Math.floor(Math.random()*100+1);
for(var i=0;i<3;i++){
if(i==6){
alert('游戏结束中奖号码是'+iNum);
return;
}else{
var sInput = prompt("请输入1~100之间的整数");
var nInput = Number(sInput);
if (isNaN(nInput)) {
alert("请输入数字");
} else {
if(nInput == parseInt(nInput)){
if(nInput <1|| nInput>100){
alert("你输入的不在范围内");
}else{//输入在1~100之间
if(iInput>iNum){
alert('你输入的数字太大');
}else if(iInput<iNum){
alert("你输入的太小");
}else{
alert("恭喜你中奖了");
return;
}
}
}else{
你输入的不是整数
}
}
}
}
switch(nInput){
case 1: alert('1'); break;
case 2: alert("2"); break;
case 3: alert("3"); break;
case 4: alert("4"); break;
case 5: alert("5"); break;
case 6: alert("6"); break;
case 7: alert("7"); break;
}
while
var i = 0;
var iSum = 0;
while(i<10){
iSum += i;
// i++;
//执行后再加
++i;
//执行前先自加
alert(i);
}
alert(iSum);
for in
var o = { x: 1, y: 2 }
for(i in o){
console.log(o[i]);
}
// 1,2
异常处理 try catch finally
function click(){
try{//抛出异常
var n=Number(prompt("请输入一个正整数"));
var f=factorial(n);
alert(n+"!="+f);
}
atch(ex){//处理异常
alert(ex);
}
finally{
alert("不管是否有异常,都显示");
}
}
function factorial(x) {
if (x < 0) {
throw new Error("x不能为负数");
}
if (isNaN(x)) {
throw new Error("你输入的不是一个数字");
}
for (var f = 1; x > 1; x--) {
f *= x;
}
return f;
}
7、JS堆栈和拷贝
http://www.cnblogs.com/chengguanhui/p/4737413.html
栈 传值 堆 传址
特点: 特点:
1、自动分配内存 1、动态分配内存
2、自动释放内存 2、大小不定不自动释放内存
3、存放基本类型(number string null Bleanoon array) 3、存放引用类型(对象、数组、函数)
4、可以直接调用 4、通过址来访问
var a = [1, 2,3, 4, 5];
var b = a;
var c = a[1];
alert(b);//1,2,3,4,5
alert(c);//2
b[4] = 6;
c = 7;
alert(a[4]); //6
alert(a[0]);
//1
8、 乘法表
var s = '<table>';
for (var i = 1; i <= 9; i++) {
s += "<tr>";
for (var j = 1; j <= i; j++) {
s += "<td>"+i +'*'+j+"="+i*j+"</td>";
}
s +="</tr>"
}
s += "</table>";
document.write(s);
1*1=1 | ||||||||
2*1=2 | 2*2=4 | |||||||
3*1=3 | 3*2=6 | 3*3=9 | ||||||
4*1=4 | 4*2=8 | 4*3=12 | 4*4=16 | |||||
5*1=5 | 5*2=10 | 5*3=15 | 5*4=20 | 5*5=25 | ||||
6*1=6 | 6*2=12 | 6*3=18 | 6*4=24 | 6*5=30 | 6*6=36 | |||
7*1=7 | 7*2=14 | 7*3=21 | 7*4=28 | 7*5=35 | 7*6=42 | 7*7=49 | ||
8*1=8 | 8*2=16 | 8*3=24 | 8*4=32 | 8*5=40 | 8*6=48 | 8*7=56 | 8*8=64 | |
9*1=9 | 9*2=18 | 9*3=27 | 9*4=36 | 9*5=45 | 9*6=54 | 9*7=63 | 9*8=72 | 9*9=81 |
冒泡排序
var item =0;
var iNum =[2,1,4,6,32,23,44,22,55];
for(var i=0;i<iNum.length-2;i++){
for(var j=i+1;j<iNum.length-1;j++){
if(iNum[i]>iNum[j]){
item =iNum[i];
iNum[i]=iNum[j];
iNum[j]=item;
}
}
}
console.log(iNum);//[1, 2, 4, 6, 22, 23, 32, 44, 55]
9、数组
var aArry = [2,3,5,7,4];
console.log(aArry.join('-'));//2-3-5-7-4
console.log(aArry.toString());//2,3,5,7,4
aArry.push(55,22);
console.log(aArry);//[2, 3, 5, 7, 4, 55, 22]
aArry.pop();//删除数组最后一个值,返回其他的
console.log(aArry);//[2, 3, 5, 7, 4, 55]
var iSum=0;
for(var i=0;i<aArry.length;i++){
iSum += aArry[i];
}
console.log(iSum);//76
var aArry=[2,4,6,9];
var aa = aArry.filter(function(x,y){
return x<4;
});
console.log(aa);//[2]
var bb= aArry.map(Math.sqrt);
console.log(bb);// [1.4142135623730951, 2, 2.449489742783178, 3]
Date类型
var d1=new Date();
console.log(d1.toLocaleDateString()+d1.toLocaleTimeString());//2018/1/15下午4:33:26
var myDate = new Date();
myDate.setMonth(4);
console.log(myDate.toLocaleDateString());//2018/5/15
myDate.setMinutes(22);
console.log(myDate.toLocaleTimeString());//下午5:22:04
location.href="#w3"; //跳转到对应的id;
location.href="http://www.baidu.com";
location.href="demo1.html";
/* if(confirm('你确定删除吗?')){
alert('ok');
}else{
alert("no");
}*/
// console.log("控制台输出");
// alert("弹窗一个窗口");
// prompt("请输入一个1~100直接的整数")
转载于:https://www.cnblogs.com/colorful-paopao1/p/8158459.html
最后
以上就是朴实金鱼为你收集整理的js基础知识总结的全部内容,希望文章能够帮你解决js基础知识总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复