您的位置:首页 > Web前端

前端基础 JS 内置对象(5)

2018-02-03 22:17 309 查看
数组

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
// 创建一个保存颜色的数组
var colors=new Array(3);
colors[0]="#f00";
colors[1]="#0f0";
colors[2]="#00f";
console.log(colors);
var nums=new Array(1,3,6,9);
console.log(nums);
var cols=["red","yellow","green"];
console.log(cols);
var infos=[6,"marry",true];
console.log(infos);
console.log(cols[1]); //读取cols这个数组中索引为1的值
var arr=["a","b","c","d"];
console.log(arr.length);  // 4
arr.length=2;//会删除arr[2]及其后面的
console.log(arr);
arr[99]="z";//超出当前数组大小,数组长度值=末尾索引+1
console.log(arr.length); // 100
//数组的遍历
for(var i=0;i<arr.length;i++){
console.log(arr[i]);
}
</script>
</body>
</html>


数组操作

<script>
// push   添加至数组尾部,返回新数组长度
var colors=new Array("red","green");
var len=colors.push("blue","yellow","blank");
console.log(len);
// unshift   添加至数组头部,返回新数组长度
var nums=[2,7,8,6];
var size=nums.unshift(99,66);
// pop   取出数组最后一个元素,并返回该值
var n=nums.pop();
console.log(nums);
// shift  取出数组第一个元素,并返回该值
var m=colors.shift();
console.log(m);
// join
var nums=[2,4,5];
var str=nums.join();  //2,4,5 ,省略参数,默认使用,分隔
var words=["border","left","color"];
// border-left-color
var wordstr=words.join("-");
console.log(wordstr);
// reverse
nums.reverse();
console.log(nums);
var strs=["a","b","c","d"];
// 返回dcba这个字符串
var newstr=strs.reverse().join("")
console.log(newstr);
// 29,5,24,17,32
var arr=[9,23,15,-99,88,12,-2];
// 降序 return 参数1<参数2
//arr.sort(function(a,b){return a<b});
// 升序 return 参数1>参数2
arr.sort(function(a,b){return a>b});
console.log(arr);

var arr1=["a","b","c"],
arr2=["d","e",1,3],
arr3;
// concat 连接数组
arr3=arr1.concat(arr2,["m",99,8]);
console.log(arr3);
// slice(start,end) end下标    索引:0开始,右侧开区间
var colors=["red","green","blue","yellow","orange"];
//var newColors=colors.slice(1,3);
//var newColors2=colors.slice(2,4);
var newColors3=colors.slice(-4,3); // 1,3
//  负数==array.length+(负数)索引
console.log(newColors3);
// 完成以下代码段,实现b数组对a数组的拷贝,方法越多越好
var a=[1,"yes",3],
b;
b=[].concat(a);
// 3、slice();
b=a.slice(0);  //缺省参数,默认截取到最后
console.log(b);

//splice方法  删除,插入,替换

var arr=["a","b","c","d","e","f"];
// 删除    起始位置  删除个数
var delArr=arr.splice(2,1);
console.log(arr);
// 插入   从索引3位置插入
var insertArr=arr.splice(3,0,"m","n",88);
console.log(arr);
// 替换
var replaceArr=arr.splice(1,2,"x","y","z");
console.log(arr);
console.log(replaceArr);//输出被替换的部分

//indexOf    (查找值,起始位置,默认从头查找),找不到返回-1
var nums=[1,7,5,7,8,1,6,9];
var pos=nums.indexOf(7,2);
console.log(pos);
//lastIndexOf  (从末尾查找,返回第一个匹配的值的位置)
pos=nums.lastIndexOf(1);
console.log(pos);
pos=nums.indexOf("7");
console.log(pos);
// 封装一个方法实现indexOf的功能
function ArrayIndexOf(arr,value){
// 检测value在arr中出现的位置
for(var i=0;i<arr.length;i++){
//此处用全等,为了避免值的类型不相等
if(arr[i]===value){
return i;
}
}
return -1;
}
var pos2=ArrayIndexOf(nums,"1");
console.log(pos2);
</script>


String对象

var str="hello world";
console.log(str.charAt(4));
console.log(str.charCodeAt(4));
var email="marry.mail@sohu.com";
// 检测@在email中出现的位置
console.log(email.indexOf("@"));
console.log(email.lastIndexOf("."));
var str="hello world";
// 截取orl
console.log(str.slice(7,10)); //[开始,结束)
console.log(str.slice(1));
str.slice(8) ; // str.slice(4,9)
console.log(str.slice(-7,-2));
//substring  负数默认修改为0,并从小的数开始截取,其他和slice相同
console.log(str.substring(-7,5)); //(0,5)
console.log(str.substring(2,-5)); //(0,2)
// str.substring(6,9)
console.log(str.substr(6,3));
console.log(str.substr(-5,4));  // (6,4)
console.log(str.substr(3,-4));

// 获取扩展名
var url="http://baidu.com/index.txt";
function getFileFormat(url){
// 获取.在url中出现的位置
var pos=url.lastIndexOf(".");
return url.substr(pos);
}
var formatName=getFileFormat(url);
var picFormat=getFileFormat("1231434.jpg")
console.log(formatName);
console.log(picFormat);

var str='welcome-to-beijing';
//使用split将str转换为数组
var arr=str.split("-");
var date='2016/05/05';
//["welcome","to","beijing"]
var dateArr=date.split("/");
console.log(dateArr);
console.log(arr);
//替换
var tel='010-62971268,400-100-9098,010-86789889';
//newTel被替换之后的字符串
var newTel=tel.replace(',',"  ");
console.log(newTel);


Date对象

// 创建一个日期时间对象
var weeks=["日","一","二","三","四","五","六"],
today=new Date(),
year=today.getFullYear(),
month=today.getMonth()+1,
date=today.getDate(),
week=today.getDay(),
hours=today.getHours(),
minutes=today.getMinutes(),
seconds=today.getSeconds(),
times=today.getTime(),
time=year+'年'+month+'月'+date+'日'+hours+'时'+minutes+'分'+seconds+'秒 星期'+weeks[week];
console.log("现在是:"+time);
console.log(times);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: