字串 ,數字 , 物件 , 陣列的擴充套件
阿新 • • 發佈:2020-09-08
字串擴充套件
1.是否有某個字元
let str = 'http://127.0.0.1:3000/index.html'; console.log(str.includes('index'));//true console.log(str.includes('logo'));//false2.是否以某個字元開頭
let str = 'http://127.0.0.1:3000/index.html'; console.log(str.startsWith('http://'));//true console.log(str.startsWith('login'));//false console.log(str.startsWith('http'));//3.是否以某個字元結尾true console.log(str.startsWith('h'));//true
let str = 'http://127.0.0.1:3000/index.html';
console.log(str.endsWith('.html'));//true
console.log(str.endsWith('index.html'));//true4.重複字串
console.log('#'.repeat(30));數值型別的擴充套件 1.判斷數字是否是有限大
console.log(Number.isFinite(900000*90000000));//true console.log(Number.isFinite(1.7976931348623157e+309));//false console.log(Number.isFinite(Infinity));//false
2.數字的最大值
console.log(Number.MAX_VALUE);
3.判斷是否為整數
console.log(Number.isInteger(0));//true console.log(Number.isInteger(0.2));//false
4.將字串轉換為整型
console.log(Number.parseInt('123')) //123 console.log(Number.parseInt('123q')) //123 console.log(Number.parseInt('12a3')) //物件的擴充套件12 // 向下取整 console.log(Math.trunc(12.8));//12
let arr1 = [1,2,3]; let arr2 = [1,2,3]; console.log(Object.is(arr1,arr2));//false let obj1 = {name : 'E'}; let obj2 = {name : 'E'}; console.log(Object.is(obj1,obj2));//false let obj3 = obj1; console.log(Object.is(obj3,obj1));//true let str1 = 'asd'; let str2 = 'asd'; console.log(Object.is(str1,str2));//true console.log(Object.is(NaN,NaN));//true
2.將一個物件的屬性或者方法分配給另一個物件Object.Assign(newObj,oldObj) 置兩個引數第一個引數是被分配的物件第二個引數是原物件 注意如果說被分配的物件有同名的key那麼原來的資料會被覆蓋 assign分配過去物件之後新物件和原物件沒有任何關係了
let newObj = {}; let oldObj = {}; newObj.name = 'li'; oldObj.name = 'zhang'; Object.assign(newObj,oldObj); console.log(newObj);//{ name: 'zhang' }陣列的擴充套件 1.Arrr.from將偽陣列對像或者可遍歷的物件轉換為真陣列
let btns = document.getElementsByTagName('button'); let qbtns=document.querySelectorAll('button'); console.log(Object.prototype.toString.call(btns));//[object NodeList] console.log(Object.prototype.toString.call(qbtns));//[object NodeList] let arr = Array.from(btns); console.log(Object.prototype.toString.call(arr)); //[object Array]
2.Array.of將一系列的值轉換為陣列
let arr = Array.of(1,3,5,7,9); console.log(arr);//[ 1, 3, 5, 7, 9 ] console.log(Object.prototype.toString.call(arr));//[object Array]
3.find找出第一個滿足條件的元素 find方法查詢陣列中第一個為真的資料filter filter是返回所有為真的元素返回值是一個數組哪怕是一個元素他也是陣列
//let arr = ['Eric','Mary','Tom','Jerry','Jack']; //let result = arr.filter(element=>element.startsWith('M')); //let result1 = arr.filter(element=>element.endsWith('k')); //console.log(result);//[ 'Mary' ] //console.log(result1);//[ 'Jack' ] let result = arr.find(element=>element.startsWith('M')); let result1 = arr.find(element=>element.endsWith('k')); console.log(result);//Mary console.log(result1);//Jack4.findIndex找出第一個滿足條件元素的索引
let arr = ['Eric','Mary','Tom','Jerry','Jack']; let result = arr.findIndex(element=>element.startsWith('J')); let result1 = arr.findIndex(element=>element.endsWith('y')); console.log(result);//3 console.log(result1);//1