JavaScript基础

控制语句

if 控制语句

if-else基本格式

if (表达式){

语句1;

......

}else{

语句2;

.....

}

功能说明

如果表达式的值为true则执行语句1,

否则执行语句2

switch 选择控制语句

switch基本格式

switch (表达式) {

case 值1:语句1;break;

case 值2:语句2;break;

case 值3:语句3;break;

default:语句4;

}

switch(x){

case 1:y="星期一"; break;

case 2:y="星期二"; break;

case 3:y="星期三"; break;

case 4:y="星期四"; break;

case 5:y="星期五"; break;

case 6:y="星期六"; break;

case 7:y="星期日"; break;

default: y="未定义";

}

for 循环控制语句

for循环基本格式

for (初始化;条件;增量){

语句1;

...

}

功能说明

实现条件循环,当条件成立时,执行语句1,否则跳出循环体

for (var i=1;i

document.write("hello ");

document.write("

");

}

----------------------------------------------

var arr=[1,"hello",true]//var dic={"1":"111"}

for (var i in arr){

console.log(i)

console.log(arr[i])

}

while 循环控制语句

while循环基本格式

while (条件){

语句1;

...

}

功能说明

运行功能和for类似,当条件成立循环执行语句花括号{}内的语句,否则跳出循环

var i=1;

while (i

document.write("hello ");

document.write("

");

i++;

}

//循环输出H1到H7的字体大小

异常处理

try {

//这段代码从上往下运行,其中任何一个语句抛出异常该代码块就结束运行

}

catch (e) {

// 如果try代码块中抛出了异常,catch代码块中的代码就会被执行。

//e是一个局部变量,用来指向Error对象或者其他抛出的对象

}

finally {

//无论try中代码是否有异常抛出(甚至是try代码块中有return语句),finally代码块中始终会被执行。

}

注:主动抛出异常 throw Error('xxxx')

ECMA对象

11种内置对象

包括:

Array ,String , Date, Math, Boolean, Number Function, Global, Error, RegExp , Object

简介:

在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变量,String、Math、Array、Date、RegExp都是JavaScript中重要的内置对象,在JavaScript程序大多数功能都是通过对象实现的

var aa=Number.MAX_VALUE;

//利用数字对象获取可表示最大数

var bb=new String("hello JavaScript");

//创建字符串对象

var cc=new Date();

//创建日期对象

var dd=new Array("星期一","星期二","星期三","星期四");

//数组对象

String对象

自动创建字符串对象:

var str1="hello world";

alert(str1.length);

alert(str1.substr(1,5));

调用字符串的对象属性或方法时自动创建对象,用完就丢弃

手工创建字符串对象

var str1= new String("hello word");

alert(str1.length);

alert(str1.substr(1,3));

采用new创建字符串对象str1,全局有效

String对象的属性

获取字符串长度

length

var str1="String对象";

var str2="";

alert("str1长度 "+str1.length);

alert("str2长度 "+str2.length);

String对象的方法(1)—— 大小写转换

var str1="AbcdEfgh";

var str2=str1.toLowerCase();

var str3=str1.toUpperCase();

alert(str2);

//结果为"abcdefgh"

alert(str3);

//结果为"ABCDEFGH"

String对象的方法(2) —— 获取指定字符

书写格式

x.charAt(index)

x.charCodeAt(index)

使用注解

x代表字符串对象

index代表字符位置

index从0开始编号

charAt返回index位置的字符

charCodeAt返回index位置的Unicode编码

----------------------

var str1="welcome to the world of JS! 苑昊";

var str2=str1.charAt(28);

var str3=str1.charCodeAt(28);

alert(str2);

//结果为"苑"

alert(str3);

//结果为33489

String对象的方法(3)—— 查询字符串

//书写格式

//

//x.indexOf(findstr,index)

//x.lastIndexOf(findstr)

//-------------------------------------

var str1="welcome to the world of JS!";

var str2=str1.indexOf("l");

var str3=str1.lastIndexOf("l");

alert(str2);

//结果为2

alert(str3);

//结果为18

//-------*********************************************************-------

//书写格式

//

//x.match(regexp)

//

//x.search(regexp)

//

//使用注解

//

//x代表字符串对象

//

//regexp代表正则表达式或字符串

//

//match返回匹配字符串的数组,如果没有匹配则返回null

//

//search返回匹配字符串的首字符位置索引

//-------------------------------------

var str1="welcome to the world of JS!";

var str2=str1.match("world");

var str3=str1.search("world");

alert(str2[0]);

//结果为"world"

alert(str3);

//结果为15

String对象的方法(4) ——子字符串处理

截取子字符串

//截取子字符串

//

//书写格式

//

//x.substr(start, length)

//

//x.substring(start, end)

//

//使用注解

//

//x代表字符串对象

//

//start表示开始位置

//

//length表示截取长度

//

//end是结束位置加1

//

//第一个字符位置为0

var str1="abcdefgh";

var str2=str1.substr(2,4);

var str3=str1.substring(2,4);

alert(str2);

//结果为"cdef"

alert(str3);

//结果为"cd"

//-------*********************************************************-------

//x.slice(start, end)

var str1="abcdefgh";

var str2=str1.slice(2,4);

var str3=str1.slice(4);

var str4=str1.slice(2,-1);

var str5=str1.slice(-3,-1);

alert(str2);

//结果为"cd"

alert(str3);

//结果为"efgh"

alert(str4);

//结果为"cdefg"

alert(str5);

//结果为"fg"

替换子字符串

//x.replace(findstr,tostr)

var str1="abcdefgh";

var str2=str1.replace("cd","aaa");

alert(str2);

//结果为"abaaaefgh"

分割字符串

ar str1="一,二,三,四,五,六,日";

var strArray=str1.split(",");

alert(strArray[1]);

//结果为"二"

连接字符串

//y=x.concat(addstr)

//

//使用注解

//

//x代表字符串对象

//addstr为添加字符串

//返回x+addstr字符串

var str1="abcd";

var str2=str1.concat("efgh");

alert(str2);

//结果为"abcdefgh"

Array对象

创建数组对象

Array 对象用于在单个的变量中存储多个值。

语法:

创建方式1:

var a=[1,2,3];

创建方式2:

new Array(); // 创建数组时允许指定元素个数也可以不指定元素个数。

new Array(size);//if 1个参数且为数字,即代表size,not content

初始化数组对象:

var cnweek=new Array(7);

cnweek[0]="星期日";

cnweek[1]="星期一";

...

cnweek[6]="星期六";

new Array(element0, element1, ..., elementn)//也可以直接在建立对象时初始化数组元素,元素类型允许不同

var test=new Array(100,"a",true);

创建二维数组

var cnweek=new Array(7);

for (var i=0;i

cnweek[i]=new Array(2);

}

cnweek[0][0]="星期日";

cnweek[0][1]="Sunday";

cnweek[1][0]="星期一";

cnweek[1][1]="Monday";

...

cnweek[6][0]="星期六";

cnweek[6][1]="Saturday";

Array对象的属性

获取数组元素的个数:length

var cnweek=new Array(7);

cnweek[0]="星期日";

cnweek[1]="星期一";

cnweek[2]="星期二";

cnweek[3]="星期三";

cnweek[4]="星期四";

cnweek[5]="星期五";

cnweek[6]="星期六";

for (var i=0;i

document.write(cnweek[i]+" | ");

}

Array对象的方法

连接数组-join方法

//书写格式

//x.join(bystr)

//使用注解

//

//x代表数组对象

//bystr作为连接数组中元素的字符串

//返回连接后的字符串

//与字符串的split功能刚好相反

var arr1=[1, 2, 3, 4, 5, 6, 7];

var str1=arr1.join("-");

alert(str1);

//结果为"1-2-3-4-5-6-7"

连接数组-concat方法

//连接数组-concat方法

//

//x.concat(value,...)

var a = [1,2,3];

var a = new Array(1,2,3);

var b=a.concat(4,5) ;

alert(a.toString());

//返回结果为1,2,3

alert(b.toString());

//返回结果为1,2,3,4,5

数组排序-reverse sort

//x.reverse()

//x.sort()

var arr1=[32, 12, 111, 444];

//var arr1=["a","d","f","c"];

arr1.reverse(); //颠倒数组元素

alert(arr1.toString());

//结果为444,111,12,32

arr1.sort(); //排序数组元素

alert(arr1.toString());

//结果为111,12,32,444

//------------------------------

arr=[1,5,2,100];

//arr.sort();

//alert(arr);

//如果就想按着数字比较呢?

function intSort(a,b){

return 1;//-1

}

else if(a

return -1;//1

}

else {

return 0

}

}

arr.sort(intSort);

alert(arr);

function IntSort(a,b){

return a-b;

}

数组的进出栈操作

//push pop这两个方法模拟的是一个栈操作

//x.push(value, ...) 压栈

//x.pop() 弹栈

//使用注解

//

//x代表数组对象

//value可以为字符串、数字、数组等任何值

//push是将value值添加到数组x的结尾

//pop是将数组x的最后一个元素删除

var arr1=[1,2,3];

arr1.push(4,5);

alert(arr1);

//结果为"1,2,3,4,5"

arr1.push([6,7]);

alert(arr1)

//结果为"1,2,3,4,5,6,7"

arr1.pop();

alert(arr1);

//结果为"1,2,3,4,5"

总结js的数组特性:

// js中数组的特性

//java中数组的特性, 规定是什么类型的数组,就只能装什么类型.只有一种类型.

//js中的数组特性1: js中的数组可以装任意类型,没有任何限制.

//js中的数组特性2: js中的数组,长度是随着下标变化的.用到多长就有多长.

var arr5 = ['abc',123,1.14,true,null,undefined,new String('1213'),new Function('a','b','alert(a+b)')];

/* alert(arr5.length);//8

arr5[10] = "hahaha";

alert(arr5.length); //11

alert(arr5[9]);// undefined */

识别图中二维码,欢迎关注python宝典

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180626A0EGUV00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券