摘要:對(duì)象只能在一行,不能多行模板字符串可以多行將字符串轉(zhuǎn)換成對(duì)象反序列化將對(duì)象轉(zhuǎn)換成字符串序列化會(huì)刪除一個(gè)字符串兩端的空白字符。并不影響原字符串本身,它返回的是一個(gè)新的字符串。
JAON對(duì)象 只能在一行,不能多行 模板字符串可以多行
let ass="[{"name":"ss","age":"3"},{"name":"aa","age":"1"},{"name":"qq","age":"4"},{"name":"zz","age":"3"},{"name":"xx","age":"5"},{"name":"cc","age":"7"}]"JSON.parse
將JSON字符串轉(zhuǎn)換成JSON對(duì)象(JSON反序列化) let aa=JSON.parse(ass); console.log(aa[2].age);//4JSON.stringify
將JSON對(duì)象轉(zhuǎn)換成JSON字符串(JSON序列化) let arr=[ {"name":"ss","age":"3"}, {"name":"aa","age":"1"}, {"name":"qq","age":"4"}, {"name":"zz","age":"3"}, {"name":"xx","age":"5"}, {"name":"cc","age":"7"} ] let bb=JSON.stringify(arr); console.log(bb);//[{"name":"ss","age":"3"},{"name":"aa","age":"1"},{"name":"qq","age":"4"},{"name":"zz","age":"3"},{"name":"xx","age":"5"},{"name":"cc","age":"7"}]String trim()
會(huì)刪除一個(gè)字符串兩端的空白字符。并不影響原字符串本身,它返回的是一個(gè)新的字符串。 let str22=" fff "; console.log("+"+str22+"+");//+ fff + console.log("+"+str22.trim()+"+")//+fff+Date now()
//1970.7.1到現(xiàn)在,1秒=1000毫秒這個(gè)概率算 console.log(Date.now());//1500799156134 //toJSON()格林時(shí)間(德國(guó)) 與我們的時(shí)間正好相反 console.log(new Date().toJSON())//2017-07-23T08:42:13.050Z console.log(new Date().toJSON().slice(0,10))//2017-07-23Numbe toFixed(1)
小數(shù)后取位數(shù),數(shù)字代表取到第幾位,四舍五入返回小數(shù) let a=new Number(1.234); console.log(a.toFixed(1));//1.2 let v=new Number(4.645372); console.log(v.toFixed(2));//4.56 console.log(Math.round(13.89));//14 四舍五入返回整數(shù)toPrecision
以指定的精度返回該數(shù)值對(duì)象的字符串表示。 precision 是 1 ~ 21 之間 let d=100000000000000000000; console.log(d.toPrecision(7));1.000000e+20 console.log(d.toPrecision(3));1.00e+20Array對(duì)象 迭代方法 forEach 遍歷,循環(huán)
let arr=[1,2,3,4,5]; arr.forEach(function(value, index){ console.log(value);//1,2,3,4,5 console.log(index);//0,1,2,3,4 });map 映射
let arr1=arr.map(function(value){ //return value+"abc"; return value*2+1; }); console.log(arr1);// ["1abc", "2abc", "3abc", "4abc", "5abc"] console.log(arr1);//[3, 5, 7, 9, 11]filter “過(guò)濾”、“篩選”
let arr2=arr.filter(function(value){ return value>2; }); console.log(arr2);//[3, 4, 5]some 指是否“某些項(xiàng)”合乎條件,只要有符合的返回true
let arr3=arr.some(function(value){ return value>2; }); console.log(arr3);//trueevery "每一個(gè)",必須是每一項(xiàng)都符合
let arr4=arr.every(function(value){ return value>3; }); console.log(arr4);//false索引方法 indexOf
返回整數(shù)索引值,如果沒(méi)有匹配(嚴(yán)格匹配),返回-1. 匹配到返回 1。
var aa = [2, 5, 7, 3, 5]; console.log(aa.indexOf(5, "x")); // 1 ("x"被忽略) console.log(aa.indexOf(5, "3")); // 4 (從3號(hào)位開(kāi)始搜索) console.log(aa.indexOf(4)); // -1 (未找到) console.log(aa.indexOf("5")); // -1 (未找到,因?yàn)? !== "5")lastIndexOf 從字符串的末尾開(kāi)始查找,
console.log(aa.lastIndexOf(5)); // 4 //console.log(aa.lastIndexOf(5, 3)); // 1 (從后往前,索引值小于3的開(kāi)始搜索) //console.log(aa.lastIndexOf(4)); // -1 (未找到)縮小方法 reduce 迭代
let ar3=[1,2,3,4,5]; let gh=ar3.reduce(function(last,now){ return last*now; },1) console.log(gh);//120reduceRight
相當(dāng)于reduce,只是reduceRight從右邊開(kāi)始計(jì)算
let ar33=[1,2,3,4,5]; let gh22=ar33.reduceRight(function(last,now){ return last*now; },1) console.log(gh22);//120判斷方法 Array.isArray(obj)
判斷一個(gè)變量是否為數(shù)組,是返回true,不是返回false
let ss=22; console.log(Array.isArray(ss));//false console.log(Array.isArray(ar33));//true ps:不兼容IE8.Object Object.create用于創(chuàng)建一個(gè)對(duì)象 create(用來(lái)指定原型proto,)
let obj={ x:1, y:2 } let obj2=Object.create(obj,{z:{value:3}}); console.log(obj2);//Object {z: 3} console.log(obj2.x);//1 //es6 let obj3={ __proto__:obj, z:3 }; console.log(obj3);//Object {z: 3}Object.defineProperty()用來(lái)給對(duì)象定義屬性的 只能指定一個(gè)
let objj={ x:1, y:2 }; objj.k=4; Object.defineProperty(objj,"j",{ value:5, writable:false,//可寫(xiě) enumerable:false,//可便利 configurable: true//可配置 }); objj.j=50; objj.k=50; console.log(objj);//Object {x: 1, y: 2, k: 50, j: 5}Object.defineProperties() 給對(duì)象一次性指定多個(gè)屬性
let objj={ x:1, y:2 }; Object.defineProperties(objj,{ "m":{ value:"mm", }, "u":{ value:"ll", } }) console.log(objj);//Object {x: 1, y: 2, m: "mm", u: "ll"}getOwnPropertyDescriptor獲取對(duì)象具體屬性的描述
let sdf=Object.getOwnPropertyDescriptor(objj,"x"); console.log(sdf);//Object {value: 1, writable: true, enumerable: true, configurable: true}Object.keys() 和getOwnPropertyNames方法類(lèi)似,但是獲取所有的可枚舉的屬性,返回一個(gè)數(shù)組
console.log(Object.keys(obj));// ["x", "y"]Object.getOwnPropertyNames()獲取所有的屬性名,
console.log(Object.getOwnPropertyNames(obj));Object.preventExtensions() 可以讓一個(gè)對(duì)象不可擴(kuò)展,該對(duì)象無(wú)法再添加新的屬性,但是可以刪除現(xiàn)有屬性
/*let aa={ x:1, y:2 }; Object.preventExtensions(aa); aa.fn=function(){ } console.log(aa);//Object {x: 1, y: 2}*/Object.seal() 來(lái)對(duì)一個(gè)對(duì)象密封,該方法會(huì)阻止對(duì)象擴(kuò)展,并將該對(duì)象的所有屬性設(shè)置為不可配置
let aa={ x:1, y:2 }; Object.seal(aa); aa.fn=function(){ } console.log(aa);//Object {x: 1, y: 4}Object.freeze() 來(lái)對(duì)一個(gè)對(duì)象進(jìn)行凍結(jié),實(shí)現(xiàn)常量的需求,該方法會(huì)阻止對(duì)象擴(kuò)展,并凍結(jié)對(duì)象,將其所有屬性設(shè)置為只讀和不可配置
let aa={ x:1, y:2 }; Object.freeze(aa); aa.y=4; console.log(aa);//Object {x: 1, y: 2}Object.isExtensible()可擴(kuò)展true 不可擴(kuò)展false
console.log(Object.isExtensible(aa));//falseObject.isSealed() 是否密封(不可配置),沒(méi)有密封false,密封true
console.log(Object.isSealed(aa));//trueObject.isFrozen()是否凍結(jié) 沒(méi)有凍結(jié)false,凍結(jié)true
console.log(Object.isFrozen(aa));//true
ps 以上方法均不兼容ie8
"use strict"文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/84253.html
摘要:項(xiàng)目中用到了和官方文檔中給出明確范圍不支持及以下版本,因?yàn)槭褂昧藷o(wú)法模擬的特性。但它支持所有兼容的瀏覽器。詞法分析階段把字符串形式的代碼轉(zhuǎn)換為令牌流。語(yǔ)法分析階段會(huì)把一個(gè)令牌流轉(zhuǎn)換成的形式方便后續(xù)操作。利用我們配置好的把生成的轉(zhuǎn)變?yōu)樾碌摹? 項(xiàng)目中用到了Vue.js和Elenment-UIVue官方文檔中給出明確范圍:Vue 不支持 IE8 及以下版本,因?yàn)?Vue 使用了 IE8 無(wú)法...
摘要:項(xiàng)目中用到了和官方文檔中給出明確范圍不支持及以下版本,因?yàn)槭褂昧藷o(wú)法模擬的特性。但它支持所有兼容的瀏覽器。詞法分析階段把字符串形式的代碼轉(zhuǎn)換為令牌流。語(yǔ)法分析階段會(huì)把一個(gè)令牌流轉(zhuǎn)換成的形式方便后續(xù)操作。利用我們配置好的把生成的轉(zhuǎn)變?yōu)樾碌摹? 項(xiàng)目中用到了Vue.js和Elenment-UIVue官方文檔中給出明確范圍:Vue 不支持 IE8 及以下版本,因?yàn)?Vue 使用了 IE8 無(wú)法...
摘要:在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章一年半經(jīng)驗(yàn),百度有贊阿里面試總結(jié),為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。 在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章-《一年半經(jīng)驗(yàn),百度、有贊、阿里面試總結(jié)》,為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。(估計(jì)只有我這么無(wú)聊了哈哈哈) 有給出的或者有些不完善的答案,也盡力給出/完善了(可能有錯(cuò),大家自行辨別)。有些很困難的題目(例如實(shí)現(xiàn)Promi...
摘要:在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章一年半經(jīng)驗(yàn),百度有贊阿里面試總結(jié),為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。 在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章-《一年半經(jīng)驗(yàn),百度、有贊、阿里面試總結(jié)》,為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。(估計(jì)只有我這么無(wú)聊了哈哈哈) 有給出的或者有些不完善的答案,也盡力給出/完善了(可能有錯(cuò),大家自行辨別)。有些很困難的題目(例如實(shí)現(xiàn)Promi...
總結(jié)call,apply,bind方法的理解使用和區(qū)別。 call,apply,bind這三個(gè)方法在JavaScript中是用來(lái)改變函數(shù)調(diào)用的this指向。那么改變函數(shù)this指向有什么用呢?我們先來(lái)看一段代碼 var a= { name:harden, fn:function () { console.log(this.name); } } var b =...
閱讀 3766·2021-11-11 11:02
閱讀 3496·2021-10-11 10:57
閱讀 3608·2021-09-22 16:00
閱讀 1843·2021-09-02 15:15
閱讀 1322·2019-08-30 15:56
閱讀 1005·2019-08-30 15:54
閱讀 2731·2019-08-30 12:43
閱讀 3539·2019-08-29 16:06