前端工程师技能总结之ECMAScript篇(五)数组、函数、字符串

目录

数组

/*1.创建数组的方式--JS原生对象 new 关键词*/

/*添加内容--通过下标添加内容*/

/*通过数组下标去访问内容*/

/*2.创建数组时定义数组长度

/*3.创建数组时定义并且初始化数据

/*4.创建数组的方法 []*/

数组的常用方法

// // 遍历数组

/*循环添加内容*/ 

/*添加数据的方法2:push() 默认添加到数组的最后*/

/*删除数组第一条数据 shift()*/

// /*删除最后一条数据 pop()*/

// /*删除中间某一条数据:splice(起始下标(包含),删除多少项)*/

/*替换数据:splice(起始下标,删除多少项,替换的新数据)*/

/*插入数据: splice(起始下标,删除多少项,替换的新数据)*/

/*数组合并 concat()*/

/*数组抽取:slice(起始下标,结束下标不包含自己)*/

// /*数组排序 sort(),reverse()*/

/*数组串联 join(串起来的符号)*/

/*随机数:

/*四舍五入 round()*/

/*向下取整 floor*/

/*向上取整 ceil()*/

//返回一个数的平方根

//返回x的y次幂

 函数

/*定义函数

/*无参函数*/

/*有参函数:

/*函数return 拿到函数的执行结果*/

/*第二种形参的写法*/

全局变量和局部变量

function练习案例

字符串

/*创建字符串的方式*/

/*字符串方法

* 1.返回下标对应的字符 ---charAt(下标)*/

/*2.截取字符串 从起始下标开始,到结束下标,不包含结束下标 slice(起始下标,结束下标)*/

/*3.截取字符串 substr(起始下标,截取多少个字符)*/

/*4.字符第一次出现的下标位置 indexOf 如果没有出现过该字符,返回-1 */

/*5.替换字符,replace("被替换的字符",“要替换成什么字符”)

/*6.搜索字符是否存在,search(“搜索的字符”)

/*7.字符串分割 split(“分割符”)

// 8.合并字符串 concat(合并字符串),返回合并好的字符串

/*9.清除前后空格 trim()*/


数组

 /*分别用三个变量存储三个学生成绩*/
 var student1=100;
 var student2=90;
 var student3=70;

/*只用一个变量 存储多个同类型的信息

* 数组 - 连续的存储空间

* 数组下标-从0开始的*/

/*1.创建数组的方式--JS原生对象 new 关键词*/

var arr=new Array();

/*添加内容--通过下标添加内容*/

 arr[0]=100;

 arr[1]=90;

 arr[2]=70;

 console.log(arr.length);//数组的长度

 arr[1]="Hello world!";

 

/*通过数组下标去访问内容*/

 

console.log(arr[6]);//未赋值的下标位置显示undefined

 console.log(arr.length);

 

/*2.创建数组时定义数组长度

* 在括号内输入一个数组,表示指定数组长度,长度可以改变*/

 var arr2=new Array(6);

 console.log(arr2.length);//6

 arr2[100]=10;

 console.log(arr2.length);//101

/*3.创建数组时定义并且初始化数据

* 下标顺序从0开始*/

var arr3=new Array(100,"hello world",70);

console.log(arr3[1]);

arr3[100]=100;

console.log(arr3.length);//101

/*4.创建数组的方法 []*/

var arr4=[1,2,3,4,7,5,6]; //字面量方式创建数组

arr4[3]="hello world";

console.log(arr4.length);

 

数组的常用方法

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

// // 遍历数组

 for(var i=0;i<arr1.length;i++){

 console.log(arr1[i]);

 }

/*循环添加内容*/ 

var arr2=new Array(6);

 for(var i=0;i<arr2.length;i++){

 arr2[i]=prompt("请输入成绩");

 }

 console.log(arr2);

/*添加数据的方法2:push() 默认添加到数组的最后*/

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

 // arr[4]=2;

 arr3.push("a","b",1,2,3,1111);

 console.log(arr3);

 

/*删除数组第一条数据 shift()*/

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

 arr4.shift();

 console.log(arr4);

 

// /*删除最后一条数据 pop()*/

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

 arr4.pop();

 console.log(arr4);

 

// /*删除中间某一条数据:splice(起始下标(包含),删除多少项)*/

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

 arr4.splice(2,2);

 console.log(arr4);

 

 

/*替换数据:splice(起始下标,删除多少项,替换的新数据)*/

 

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

arr5.splice(0,3,"hello");

console.log(arr5);

 

/*插入数据: splice(起始下标,删除多少项,替换的新数据)*/

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

arr5.splice(0,0,"world");

console.log(arr5);

 

/*数组合并 concat()*/

 var arr6=[123,123,123];

 var arr7=[456,456,456];

 arr6=arr6.concat(arr7);

 console.log(arr6);

 var newArr=arr6.concat("b","c");

 console.log(newArr);

 

/*数组抽取:slice(起始下标,结束下标不包含自己)*/

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

 var newArr=arr8.slice(0,-1);//如果是负数表示从最后开始倒数

 console.log(newArr);

 

// /*数组排序 sort(),reverse()*/

 var arr9=[3,2,1,9,7,8,6,5,4];

 var arr10=[];//存放最终的数组

 // var arr10=arr9;

 

 for(var i=0;i<arr9.length;i++){//循环赋值

 arr10[i]=arr9[i];

 }

 console.log(arr10);

 arr10.sort();

 console.log(arr10);

倒序排列

// var arr=[1,2,3,4,5,6,7,8];

// var newArr=arr.reverse();// 颠倒数组中的元素顺序

// console.log(newArr);

 

/*数组串联 join(串起来的符号)*/

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

var newArr=arr11.join("$");

console.log(newArr);

console.log(typeof newArr);

 

/*随机数:

Math.random() 0-1之间的随机数*/

var random=Math.random();

/*生成0-9之间的随机数*/

random=parseInt(Math.random()*10);

 

/*生成40-60之间的随机数

* Math.random()*(大-小+1)+小*/

random=parseInt(Math.random()*21+40);

console.log(random);

 

/*四舍五入 round()*/

console.log(Math.round(25.1));

 

/*向下取整 floor*/

console.log(Math.floor(29.9));

 

/*向上取整 ceil()*/

console.log(Math.ceil(31.1));

//返回一个数的平方根

console.log(Math.sqrt(81));

//返回x的y次幂

console.log(Math.pow(2,3));

 函数

/*定义函数

* 关键词function 函数名(可选 -形参 1.形参1 2.形参2 ……){

* 函数体 -- 要执行的内容

* 形参在函数体内部可以直接像变量一样去调用

* 形参只能在自己函数里面使用

* return 返回值 它之后的内容不会被执行

* }*/

 

/*无参函数*/

// function myalert() {

// alert("hello world");

// }

/*函数不会自定执行,必须调用

* 调用方法:函数名()*/

// myalert();

 

/*有参函数:

* 1.形参

* 2.实参

*

* function 商店(钱){

* alert(买到了东西)

* }

* 商店(100)

* */

 function myShop(money) {//形参

 // money=50;//当作变量在函数内部使用

 if(money==100){

 alert("买了个表");

 }else if(money==50){

 alert("买了盒牛肉干");

 }

 }

 myShop(100);//实参

 

/*函数return 拿到函数的执行结果*/

function myShop(money) {//形参

// money=50;//当作变量在函数内部使用

var good="";

if(money==100){

good="买了个表";

}else if(money==50){

good="买了盒牛肉干";

}

return good;

}

var myGood=myShop(50);

console.log(myGood);

 

function jia(a,b) {

return a+b;

}

var sum1=jia(666,999);

console.log(sum1);

 

function jian(a,b) {

return a-b;

}

var sub=jian(666,999);

console.log(sub);

 

function myMath(a,b) {

var mysum=a+b;

var mysub=a-b;

var myArray=new Array(mysum,mysub);

return myArray;

console.log(myArray);//return 后面的内容不会被执行

}

var myMath1=myMath(88,66);

console.log(myMath1)

 

/*第二种形参的写法*/

function mySum() {

console.log(arguments);//通过arguments获取到用户传进来的参数

console.log(arguments[2]);

var sum=0;

for(var i=0;i<arguments.length;i++){

sum+=arguments[i];//sum=sum+arguments[i]

}

return sum

}

// mySum(1,4,5,7,8,9);

var myResult=mySum(1,4,5,7,8,9);

console.log(myResult)

全局变量和局部变量

/*全局变量--所有写在函数外面的就是全局变量,函数里面也能操作

* 局部变量 --写在函数里面的var 的就是局部变量,作用于函数内部,外面无法访问*/

// var a=1;

//

// var d=0;

//

// function test() {

// var b=2;//局部变量

// a=2;

// c=10;//全局变量

// // console.log(c);

// return b;

// }

// var myNo=test();

// console.log("b="+myNo);

// console.log(c);//10

// console.log(b);//2

 

//

// var a=10;

// function test(number) {

// console.log(number);//10

// number=20;

// console.log(number)//20

// }

// test(a);

// console.log(a);//10

 

// var a=[10,20];

// function test(arr) {

// console.log(arr);//[10,20]

// arr[0]=30;

// console.log(arr);//[30,20]

// }

// test(a);

// console.log(a);//[30,20]

// console.log(typeof a);//object

//

// var a=[10,30,20];

// var b=a;

// b[0]=0;

// console.log(b);//[0,30,20]

// console.log(a);//[0,30,20]

 

function练习案例

/*1.输入半径,高,求圆柱体的面积,和体积,把体积、面积返回给函数调用者,

然后由调用者输出面积和体积大小.

圆面积:PI*R*R

圆周长:2*PI*R*

*/

// function test(r,h) {

// var mianji=3.14*r*r*2+2*3.14*r*h;

// var tiji=3.14*r*r*h;

// return [mianji,tiji];

// }

字符串

var str ="hello";

console.log(str.length);

console.log(str[0]);

str.charAt(0);//返回指定位置的字符

console.log(str.charAt(1));

/*创建字符串的方式*/

// var str="hello";//字面量方法 字符串

// var str1=new String("hello");//String 对象

// console.log(typeof str);

// console.log(typeof str1);

// console.log(str==str1);//true

// console.log(str===str1);//false

//

/*字符串方法

* 1.返回下标对应的字符 ---charAt(下标)*/

var str="hello world";

var result=str.charAt(8);

console.log(result);

 

/*2.截取字符串 从起始下标开始,到结束下标,不包含结束下标 slice(起始下标,结束下标)*/

result=str.slice(1,4);

console.log(result);

 

/*3.截取字符串 substr(起始下标,截取多少个字符)*/

result=str.substr(1,5);

console.log(result);

/*4.字符第一次出现的下标位置 indexOf 如果没有出现过该字符,返回-1 */

result=str.indexOf("w");

console.log(result);

 

/*5.替换字符,replace("被替换的字符",“要替换成什么字符”)

* 返回一个替换掉的string*/

result=str.replace("world","单身狗");

console.log(result);

 

/*6.搜索字符是否存在,search(“搜索的字符”)

* -1 没有

* 起始下标 有*/

result=str.search("world");

console.log(result);

 

/*7.字符串分割 split(“分割符”)

* 返回数组,分割符会被去掉*/

result=str.split("o");

console.log(result);

 

// 8.合并字符串 concat(合并字符串),返回合并好的字符串

var str2="bye!";

result=str.concat(str2);

console.log(result);

console.log(str);

 

/*9.清除前后空格 trim()*/

var str3=" hello world byebye ";

result=str3.trim();//不会清除文字之间的空格

console.log(result);

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值