1. 程式人生 > 其它 >js-5:常用的內建物件和使用方法

js-5:常用的內建物件和使用方法


############### JS內建物件-自定義物件 ################

/*
js中內建的物件和方法:
* */


//js中自定義物件
var person = {name:"andy",age:18};//在js物件中,屬性名預設不需要加引號,你加了js也會給你去掉的,值可以是單引號和雙引號,單引號會轉換成雙引號
console.log(person);

// 單個取屬性
console.log(person.name);
console.log(person.age);

//遍歷取屬性
for (var i in person){
    console.log(i);
    console.log(person[i])
}

//自定義物件的第二種方式:
var person2 = new Object();
person2.name="xiaoxiao";
person2.age=22;
console.log(person2);

############### JS內建物件-Date物件 ################

//內建的Date物件,就相當於python中的模組

var d1 = new Date();
console.log(d1); //這是預設生成當前時間,這是一個時間物件,
console.log(d1.toLocaleString()); //這是一個字串
var d2 = new Date("2004/3/20 11:12");
console.log(d2.toLocaleString());

/*

var d = new Date();
//getDate()                 獲取日
//getDay ()                 獲取星期
//getMonth ()               獲取月(0-11)
//getFullYear ()            獲取完整年份
//getHours ()               獲取小時
//getMinutes ()             獲取分鐘
//getSeconds ()             獲取秒
//getMilliseconds ()        獲取毫秒
//getTime ()                返回累計毫秒數(從1970/1/1午夜)

* */

############### JS內建物件-json物件 ################

//json物件
var s = '{"name":"andy","age":12}'; //這是一個字串,怎麼使用js轉換成為json格式的,
var ret = JSON.parse(s);
console.log(ret);
console.log(typeof ret); //型別是一個物件

// 怎麼把js中的物件,轉換成字串呢?
var s2 = JSON.stringify(ret);
console.log(s2);
console.log(typeof s2); //型別是一個字串

// 這兩個一定要學會,後面使用ajax傳遞資料的時候,會使用到

############### JS內建物件-Math物件 ################

//math物件
var n = -5;
n2 = Math.abs(n); //絕對值
console.log(n2);
Math.floor(5.9); //直接往下去,這就是5,
Math.min(1,2);
Math.max(1,2);
Math.pow(10,2); //返回x的y次冪
Math.random(); //返回一個0-1之間的隨機數
Math.round(5.5); //四捨五入

############### JS內建模組-RegExp模組,正則模組 ################

//RegExp物件,正則,類似python中的re模組
//生成RegExp物件,
var reg1 = new RegExp("^[a-zA-Z][a-zA-Z0-9_]{5,11}$");
//這是以字母開頭,5-11位的字母數字下滑線組成
var reg2 = reg1.test('xiaoming');
console.log(reg2); //true
var reg3 = reg1.test('2xiaoming');
console.log(reg3); //false

//簡單寫法
console.log(/^[a-zA-Z][a-zA-Z0-9_]{5,11}$/.test("xiaoming"));
console.log(/^[a-zA-Z][a-zA-Z0-9_]{5,11}$/.test("3xiaoming"));

//這裡面有很多的坑
// 1,re表示式內部不能加空格,否則會產生意想不到的錯誤,
// console.log(/^[a-zA-Z][a-zA-Z0-9_]{5, 11}$/.test("xiaoming"));

//2,test裡面不寫值,預設不是空,是校驗的一個undefined,這是大坑啊,
console.log(/^[a-zA-Z][a-zA-Z0-9_]{5,11}$/.test());//等同於console.log(/^[a-zA-Z][a-zA-Z0-9_]{5,11}$/.test("undefined"));

//3,字串替換
//兩種模式,g,i,
var ss = 'Ahahaha';
var sss = ss.replace("a","哈");//這樣寫只會替換第一個a,這個要記住,
var sss = ss.replace(/a/,"哈");//這樣寫只會替換第一個a,這個要記住,這是正則的寫法
var sss = ss.replace(/a/g,"哈");//加一個g,就是說全域性有多少就替換多少,
var sss = ss.replace(/a/gi,"哈");//加一個i,就是說忽略大小寫,都替換
console.log(sss);

###

####