JS内建對象

Posted ananasfleisch

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS内建對象相关的知识,希望对你有一定的参考价值。

Math方法

// 常量数据不能修改
console.log(Math.PI);
console.log(Math.SQRT2);
console.log(Math.SQRT1_2);
// Math.PI/180*60
?
// abs  绝对值  非负值
console.log(Math.abs(-5.352));
?
// 将小数点求整数
Math.ceil(); //向上舍入
Math.floor(); //向下舍入
Math.round(); //四舍五入
?
var a=3.54;
var a=-3.4    
//  -3.6    -4+0.4=-4 
//  -3.5   -4+0.5=-4+1=-3
console.log(Math.round(a));
var a=3.2;
console.log(Math.ceil(a));//整数+1
console.log(Math.floor(a));
?
// max  min
var max=Math.max(3,5,7);
console.log(max)
var min=Math(1,5,8);
?
var arr=[2,24,5,7,3,2,1,7,4,22,56];
var max=Math.max.apply(null,arr);
var min=Math.min.apply(null,arr);
console.log(max,min);
?
//sqrt 平方根   pow 幂
var n=Math.sqrt(4);
console.log(n);
?
var a=10;
var s=Math.pow(a,2);//多少次幂
var s=Math.pow(a,1/2);//平方根
var s=Math.pow(a,1/3);//立方根

Number方法

// Number.MAX_VALUE
// Number.MIN_VALUE
// Number.NaN
// NaN
?
var a=10;
a= a.toLocaleString();
console.log(a);
?
var a=356.274;
console.log(a.toPrecision(5));//1-21   四舍五入的作用
var a=0.0057;
console.log(a.toExponential(2));

String方法

var  str="aa";
var str1=new String("aa");
?
// 字符类型 正则表达式
// length 字符长度  只读
?
var str="abcd";
str.length=0;//ES6 报错
console.log(str.length);//只能获取不能修改
?
console.log(str[1]);//b
str[1]="e"  禁止使用这种方式修改字符串
?
console.log(str.charAt(1));//str[1];
?
console.log(str.concat("eeee"));//str+="eeee";
?
var age=10;
console.log("今年你"+age+"岁了");
console.log("今年你".concat(age,"岁了"));
?
console.log(str.indexOf("a"));//查找a字符是否在字符串中存在,如果不存在返回-1
str.indexOf("a",position);//从第几个开始查找
?
str.lastIndexOf("a")  从尾部向前查找
?
var arr=[
        {id:1001,name:"计算机",price:4999},
        {id:1002,name:"电机",price:1999},
        {id:1003,name:"记事本",price:9},
        {id:1004,name:"课本",price:99},
        {id:1005,name:"计算器",price:149},
    ];
var arr1=arr.filter(function(item){
    return item.name.indexOf("本")>-1;
})
console.log(arr1); 
var str="abcd";
console.log(str.charCodeAt(0));//获取下标是0的字符的Unicode编码
?
String.fromCharCode(97); //编码转换为字符串
?
// replace
var str="abcdefcd";
str=str.replace("b","z");//字符串的方法不能修改原字符,返回替换后的新字符串
str=str.replace("c","z");//暂时只能替换一个字符
str=str.replace("c","c1");//既是替换又是插入字符
str=str.replace("cd",function(item){
    console.log(item);
    return item+"1";
}) 
console.log(str);
?
var str="abcde";
var index=str.search("a");
//search可以用于正则表达式查找
?
// 字符串的正则表达式,将查找的结果以数组的形式返回
var arr=str.match("c")
console.log(arr);
?
// slice 和数组的slice等同
//隨機顔色
function randomColor(){
    var col="#";
    for(var i=0;i<6;i++){
        col+=Math.floor(Math.random()*16).toString(16);
    }
    return col; 
} 
function randomColor(){
    var col="rgb(";
    for(var i=0;i<3;i++){
        col+=Math.floor(Math.random()*256)+","
    }
    col=col.slice(0,-1)+")";
    return col;
} 
function randomColor(){
    return "#"+Array(6).fill(Math.floor(Math.random()*16).toString(16)).join("");
} 
?
<style>
    div{
        width: 100px;
        height: 100px;
    }
</style>
<div id="div0"></div>
var div0=document.getElementById("div0");
div0.style.backgroundColor=randomColor();
div0.onclick=function(){
    div0.style.backgroundColor=randomColor();
} 
?
?
var str="abcdefg";
str=str.substring(start,end);//截取字符串从start到end结束
// substring,start和end都不支持负数,负数代表0之前,就是最前面
// slice只能从前向后选
// substring可以从后向前选
console.log(str.substring(5,2))
var str="中国的四大名著中《西游记》是吴承恩写的";
str=str.substring(str.indexOf("《")+1,str.indexOf("》"));
console.log(str);
?
str.substr(start,length);//截取从字符串start开始,按照给出长度截取固定的字符串
str=str.substr(str.indexOf("《")+1,3);
console.log(str);
?
console.log(str.toUpperCase());
console.log("XIETIAN".toLowerCase());
?
// split  切割,使用某个符号切割,和数组的join相反
var arr=[1,2,3,4,5,6];
var str=arr.join("#");
console.log(str);
var arr1=str.split("#");
console.log(arr1);
?
var str="abcdef";
var arr=str.split("");
console.log(arr); 
?
// 转换成数组,然后反转,然后再用""连接
str=str.split("").reverse().join("");
console.log(str);
?
var url="https://detail.tmall.com/item.htm?id=570063940353&ali_refid=a3_430406_1007:116401153:J:157145175_0_1069023083:ddc80320c499f96850f409bbea969fa6&ali_trackid=85_ddc80320c499f96850f409bbea969fa6&spm=a21bo.2017.201874-sales.15";
// queryString
?
function getURLPram(url){
    url=url.split("?")[1];
    var obj={};
    var arr=url.split("&");
    for(var i=0;i<arr.length;i++){
        var str=arr[i];
        var arr1=str.split("=");
        obj[arr1[0]]=arr1[1];
    }
    return obj;
} 
?
function getURLPram(url){
    return url.split("?")[1].split("&").reduce(function(value,item){
        var arr=item.split("=");
        value[arr[0]]=arr[1];
        return value;
    },{})
} 
?
var obj= getURLPram(url);
console.log(obj); 

Date對象

var date=new Date();
console.log(date);
var year=date.getFullYear();
var month=date.getMonth();//0-11
var day=date.getDate();//日期
var week=date.getDay();//星期  0-6  0星期日
var hour=date.getHours();
var minutes=date.getMinutes();
var second=date.getSeconds();
var ms=date.getMilliseconds();
?
var h=date.getUTCHours();
?
var time=date.getTime();//时间戳 从1970.1.1到现在的毫秒数
// 永远不重复,唯一
console.log(h);
?
var url="....?time="+new Date().getTime();
?
function fn1(){
    var s=0;
    for(var i=0;i<1000;i++){
        s+=i;
    }
}
?
function fn2(s,i){
    if(!s) s=0;
    if(!i) i=0;
    i++;
    s+=i;
    if(i<1000) fn2(s,i); 
}
?
var time=new Date().getTime();
Utils.timeStart();
?
var id1=Utils.ts();
for(var i=0;i<10000;i++){
   fn1();
}
console.log(Utils.timeEnd());
console.log(new Date().getTime()-time);
time=new Date().getTime();
Utils.timeStart();
?
var id2=Utils.ts();
for(var j=0;j<10000;j++){
    fn2();
}
?
console.log(Utils.te(id2));
console.log(Utils.te(id1));
?
console.log(Utils.timeEnd());
console.log(new Date().getTime()-time);
?
var date=new Date();
console.log(date.toLocaleString());//转换为本地时间
console.log(date.toUTCString());//转换为格林尼治时间,后面的cookie使用
?
var date=new Date();
// 任何设置如果数值大于该值域的最大值时,就会进位
date.setFullYear(2021);
date.setMonth(12);
console.log(date);
date.setMinutes(date.getMinutes()+30);//设置30分钟后
?
// 每次new Date就会获取new这个时间的当时值
?
var date=new Date();
console.log(date.getSeconds());
?
setTimeout(function(){
    var d=new Date();
    console.log(d.getSeconds());
},2000) 

 

以上是关于JS内建對象的主要内容,如果未能解决你的问题,请参考以下文章

js函數

JS數組

總結01

學習日記:函數和對象

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

VSCode自定义代码片段——JS中的面向对象编程