日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

Javascript 对象二(Number、String、Boolean、Array、Date、Math、RegExp)

發(fā)布時(shí)間:2023/12/9 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Javascript 对象二(Number、String、Boolean、Array、Date、Math、RegExp) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Javascript 對(duì)象二(Number、String、Boolean、Array、Date、Math、RegExp)

    • Number 數(shù)字 對(duì)象
    • String 字符串 對(duì)象
    • Boolean 布爾 對(duì)象
    • Array 數(shù)組 對(duì)象
    • Date 日期 對(duì)象
    • Math 算數(shù) 對(duì)象
    • RegExp 正則表達(dá)式 對(duì)象

Number 數(shù)字 對(duì)象

  • JavaScript中 數(shù)字不分為整數(shù)類型和浮點(diǎn)型類型,所有的數(shù)字都是由 浮點(diǎn)型類型。
  • 有 JavaScript 數(shù)字均為 64 位
  • 精度:整數(shù)最多為 15 位,小數(shù)的最大位數(shù)是 17
  • 八進(jìn)制:前綴為 0。絕不要在數(shù)字前面寫零,除非您需要進(jìn)行八進(jìn)制轉(zhuǎn)換。
  • 十六進(jìn)制: 前綴為 0 和 “x”
  • 輸出16進(jìn)制、8進(jìn)制、2進(jìn)制的方法:使用 toString() 方法
var myNumber=128; myNumber.toString(16); // 返回 80 myNumber.toString(8); // 返回 200 myNumber.toString(2); // 返回 10000000
  • 無(wú)窮大(Infinity):正無(wú)窮大(Infinity),負(fù)無(wú)窮大(-Infinity)
  • NaN 非數(shù)字值:用于指示某個(gè)值不是數(shù)字
  • 判斷一個(gè)值是否是 NaN 值: 使用 isNaN() 全局函數(shù)來(lái)判斷
  • 數(shù)字可以是數(shù)字或者對(duì)象。數(shù)字對(duì)象:

String 字符串 對(duì)象

字符串語(yǔ)法:

var str = 'hello'; var str = "hello"; var str = "'hello I'm Lotus" //字符串引號(hào)與內(nèi)容引號(hào)不同 var str = 'hello I\'m Lotus' //轉(zhuǎn)義字符 var str = "hello \" Lotus\"" // 特殊字符: \' 單引號(hào) \" 雙引號(hào) \\ 反斜杠 \n 換行 \r 回車 \t tab制表符 \b 退格符 \f 換頁(yè)符

字符串屬性和方法:
length: 計(jì)算返回字符串長(zhǎng)度

var str = "Lotus"; var str1 = ' hello "小微"' document.write(str.length); // 5 document.write(str1.length); // 11

chartAt(): 返回指定索引位置的字符

chartCodeAt(): 返回指定所以位置的Unicode值

concat() : 字符串連接,返回連接后的字符串

indexOf() :返回查找指定字符第一次出現(xiàn)的位置

lastIndexOf() : 返回查找指定字符最后一次出現(xiàn)的位置

match() :找到一個(gè)或者多個(gè)正則表達(dá)式的匹配

replace() :替換與正則表達(dá)式匹配的子串

search() :檢索與正則表達(dá)式相匹配的值

slice():返回提取的字符串片段

split() :把字符串分隔為子字符串?dāng)?shù)組

substr() :從起始索引提取字符串中指定數(shù)目的字符

substring():提取字符串兩個(gè)指定的索引之間的字符

toLowerCase():把字符串轉(zhuǎn)為小寫

toUpperCase() :把字符串轉(zhuǎn)為大寫

toString() :返回字符串對(duì)象值

trim() :移除字符串首尾空白

valueOf() :返回某個(gè)字符串對(duì)象的原始值

let str = "hello lotus"; document.write(str.charAt(1)); // e document.write(str.charCodeAt(1)); // 101let str1 = 'hello wang'; document.write(str.concat(str1)); //hello lotushello wang document.write(str.concat(str1, 'abc', '123')); // hello lotushello wangabc123 document.write(str); // hello lotus

Boolean 布爾 對(duì)象

Boolean 對(duì)象用于轉(zhuǎn)換一個(gè)不是 Boolean 類型的值轉(zhuǎn)換為 Boolean 類型值 (true 或者false).

var myvar = new Boolean(1); myvar.constructor; // function Boolean() { [native code] }var bool = new Boolean(0); var myvar = bool.valueOf(); // false

布爾對(duì)象無(wú)初始值或者其值為: 0 -0 null “” false undefined NaN,對(duì)象的值為 false

Array 數(shù)組 對(duì)象

  • 數(shù)組: 使用單獨(dú)的變量名來(lái)存儲(chǔ)一系列的值
  • 創(chuàng)建數(shù)組
1) 字面量 let array = []; let arr = ['hello', 'world'];2)構(gòu)造函數(shù) let arr = new Array(0; arr[0] = 'hello' 簡(jiǎn)寫:let arr = new Array('hello', 'world');3ES6新增的Array.of()方法 var arr=Array.of() var arr=Array.of(1,2,3)
  • 訪問(wèn)數(shù)組:及索引訪問(wèn)數(shù)組的特定元素,第一個(gè)元素索引是[0],第二個(gè)是[1], 最后一個(gè)是 arr.length - 1
  • 數(shù)組檢測(cè): isArray() 、instanceof、.costructor、Object.prototype.toString.call([])==="[object Array]"、
let arr = []; arr.isArray() // true arr instanceof Array // true arr.constructor == array //true Object.prototype.toString.call(arr)==="[object Array]" //true
  • 數(shù)組的屬性和方法
  • lenght:返回?cái)?shù)組的長(zhǎng)度,也可以用來(lái)截?cái)鄶?shù)組
var arr=[1,2,3,4,5]; console.log(arr.length); //5 ,返回?cái)?shù)組的元素個(gè)數(shù) arr.length=3; //截?cái)鄶?shù)組 console.log(arr); //1,2,3
  • push() :向數(shù)組的尾部添加一項(xiàng)或多項(xiàng);參數(shù)為單個(gè)值或者數(shù)組 ;
//返回添加元素后數(shù)組的長(zhǎng)度;會(huì)改變?cè)瓟?shù)組 var arr=[1,2,3]; console.log(arr.push('a')); //4 (4) [1, 2, 3, "a"] console.log(arr.push(['a','b','c'])); //5 (5) [1, 2, 3, "a", Array(3)]
  • pop() :刪除數(shù)組最后一項(xiàng);無(wú)參數(shù);返回刪除的那一項(xiàng);會(huì)改變?cè)瓟?shù)組
var arr=['a','b','c']; var tmp=arr.pop(); console.log(tmp); //c (1)['a','b']
  • unshift() : 向數(shù)組開(kāi)頭添加一項(xiàng)或多項(xiàng);參數(shù)為單個(gè)值或者數(shù)組 ;
//返回添加元素后數(shù)組的長(zhǎng)度;會(huì)改變?cè)瓟?shù)組 var arr=[1,2,3]; console.log(arr.unshift()('a'));//4 (4) ["a",1, 2, 3] console.log(arr.unshift()(['a','b','c']));//5 (5) [Array(3),"a",1, 2, 3]
  • shift() :向數(shù)組開(kāi)頭刪除一項(xiàng);無(wú)參數(shù);返回刪除的那一項(xiàng);會(huì)改變?cè)瓟?shù)組
var arr=['a','b','c']; var tmp=arr.shift(); console.log(tmp); //c (1)['b','c']
  • splice() : 刪除、插入、替換數(shù)組項(xiàng);有參數(shù);返回刪除項(xiàng)組成的數(shù)組;會(huì)改變?cè)瓟?shù)組
var arr=['a','b','c','d','e','f']; var tmp1=arr.splice(0,1);//刪除一項(xiàng) console.log(arr,tmp1);//["b", "c", "d", "e", "f"], ["a"] var tmp2=arr.splice(1,1,'aaa');//替換一項(xiàng) console.log(arr,tmp2);// ["b", "aaa", "d", "e", "f"], ["c"] var tmp3=arr.splice(1,3,'bbb');//插入、替換多項(xiàng) console.log(arr,tmp3);// ["b", "bbb", "f"], ["aaa", "d", "e"]
  • copyWithin() :ES6新增,將數(shù)組指定位置(start to end)的元素復(fù)制到當(dāng)前數(shù)組的其他位置(target)
這種復(fù)制會(huì)替換原位置的元素;返回替換之后的數(shù)組;改變?cè)瓟?shù)組 var arr=['a','b','c','d','e','f']; var tmp1=arr.copyWithin(3);//用索引0~4范圍內(nèi)的元素,替換索引3~4范圍內(nèi)的元素 console.log(arr,tmp1);//["a", "b", "c", "a", "b", "c"],["a", "b", "c", "a", "b", "c"] var temp2 = arr.copyWithin(3, 2);//用索引2~4范圍內(nèi)的元素,替換索引3~4范圍內(nèi)的元素 console.log(arr, temp2); // ["a", "b", "c", "c", "a", "b"],["a", "b", "c", "c", "a", "b"]
  • reverse() : 翻轉(zhuǎn)原數(shù)組;無(wú)參數(shù);返回翻轉(zhuǎn)后的數(shù)組;會(huì)改變?cè)瓟?shù)組
var arr = [1, 2, 3]; var temp = arr.reverse(); console.log(arr, temp); // [ 3, 2, 1 ] [ 3, 2, 1 ]
  • sort() :數(shù)組排序;參數(shù)compareFunction(compareFunction返回值>0時(shí)調(diào)換當(dāng)前順序,否則順序不變)
返回排序后的數(shù)組;會(huì)改變?cè)瓟?shù)組//從小到大排序 var arr = [1, 4, 6, 7, 8, 3, 2]; var tmp = arr.sort();//從小到大排序 console.log(arr,tmp); //[1, 2, 3, 4, 6, 7, 8],[1, 2, 3, 4, 6, 7, 8] var tmp2=arr.sort().reverse();//從大到小排序 console.log(arr, tmp2); // [8, 7, 6, 4, 3, 2, 1],[8, 7, 6, 4, 3, 2, 1] var tmp1 = arr.sort((a, b) => { //從小到大排序return a - b; }) console.log(arr, temp1); // [ 1, 2, 3, 4, 6, 7, 8 ] [ 1, 2, 3, 4, 6, 7, 8 ] var tmp1 = arr.sort((a, b) => { //從大到小排序return b - a; }) console.log(arr, temp1); // [ 1, 2, 3, 4, 6, 7, 8 ] [ 1, 2, 3, 4, 6, 7, 8 ]
  • concat() :拼接數(shù)組;參數(shù)類型可以是任意類型;返回拼接后的數(shù)組;原數(shù)組不發(fā)生改變
var arr=[1,2,3]; var arr1=arr.concat(); //復(fù)制 console.log(arr,arr1); //[1, 2, 3],[1, 2, 3]
  • slice() : 基于當(dāng)前數(shù)組的一項(xiàng)或者多項(xiàng)創(chuàng)建一個(gè)數(shù)組;不會(huì)改變?cè)瓟?shù)組
let arr = [0, 1, 2, 3, 4]; let temp = arr.slice(1,3); // 返回從索引1(包括)位置到索引3(不包括)位置之前的元素 console.log(arr, temp); // [0, 1, 2, 3, 4] [1, 2] let arr = [0, 1, 2, 3, 4]; //用于復(fù)制數(shù)組 let temp = arr.slice(0); // 返回從索引0(包括)位置到數(shù)組結(jié)尾的所有元素 console.log(arr, temp); // [0, 1, 2, 3, 4] [0, 1, 2, 3, 4]
  • indexOf() : 從數(shù)組開(kāi)頭查找元素在數(shù)組中的索引位置;返回在數(shù)組中的索引,沒(méi)找到則返回-1
var arr=['a','b','c']; var tmp=arr.indexOf('b'); console.log(arr,tmp); //["a", "b", "c"] , 1
  • lastIndexOf() :從數(shù)組結(jié)尾查找元素在數(shù)組中的索引位置

  • 遍歷數(shù)組的方法

  • 傳統(tǒng)方法:for循環(huán)、for...in循環(huán)、for...of循環(huán)

for: for(let i=0;i<arr.length;i++){console.log(arr[i]); // a b c 1 2 3 }for...in for(var i in arr){console.log(i); // 0 1 2 3 4 5console.log(arr[i]); //a b c 1 2 3 }for...of for(var item of arr){console.log(item); //a b c 1 2 3 undefined }forin 、 forof 的區(qū)別:1、推薦在循環(huán)對(duì)象屬性的時(shí)候,使用for in,在遍歷數(shù)組的時(shí)候推薦使用for of2、forin 循環(huán)出來(lái)的是key, forof循環(huán)出來(lái)的是value3、forinES5 標(biāo)準(zhǔn),forofES6標(biāo)準(zhǔn),兼容性可能存在些問(wèn)題,請(qǐng)注意使用4、for...in 循環(huán)除了遍歷數(shù)組元素外,還會(huì)遍歷自定義屬性,for...of只可以循環(huán)可迭代的可迭代屬性,不可迭代屬性在循環(huán)中被忽略了
  • forEach() 、 map() 、 filter() 、every() 、 some()
  • forEach方法:被傳遞給foreach的函數(shù)會(huì)在數(shù)組的每個(gè)元素上執(zhí)行一次;元素作為參數(shù)傳遞給該函數(shù)。
  • !* 未賦值的值是不會(huì)在foreach循環(huán)迭代的,但是手動(dòng)賦值為undefined的元素是會(huì)被列出的 var arr=['a', 'b', 'c', , undefined, 1, 2, 3,]; arr.forEach( function( element, index ) { //ES5console.log( index, element ); //0:"a" , 1:"b" , 2:"c" , 3:1 , 4:2 , 5:3 }) arr.forEach( ( element, index ) => { //ES6console.log( index, element ); //0:"a" , 1:"b" , 2:"c" , 3:1 , 4:2 , 5:3 })
  • map方法:通過(guò)callback對(duì)數(shù)組元素進(jìn)行操作;并將所有操作結(jié)果放入數(shù)組中并返回該數(shù)組。
  • var arr=['a', 'b', 'c', , undefined, 1, 2, 3,];var arr1 = arr.map( function( item ) { //ES5return item + "*"; })var arr1 = arr.map( item => { //ES6return item + "*"; })console.log(arr1); //["a*", "b*", "c*", undefined × 1, "undefined*", "1*", "2*", "3*"]

    3)filter方法:返回一個(gè)包含所有在回調(diào)函數(shù)上返回為true的元素新數(shù)組,
    回調(diào)函數(shù)在此擔(dān)任的是過(guò)濾器的角色,當(dāng)元素符和條件,過(guò)濾器就返回true,而filter則會(huì)返回所有符合過(guò)濾條件的元素

    var arr=['a', 'b', 'c', , undefined, 1, 2, 3,];var arr1 = arr.filter( function ( item ) { //ES5if ( typeof item == 'number' ){return item;} }) var arr1 = arr.filter( item => { //ES6if ( typeof item == 'number' ) return item; }) console.log(arr1); //[1,2,3]

    4)every方法: 當(dāng)數(shù)組中的每一個(gè)元素在callback上被返回true時(shí)就返回true

    (注意:要求每一個(gè)單元項(xiàng)都返回true時(shí)才為true) var arr=['a', 'b', 'c', , undefined, 1, 2, 3,];var resault = arr.every( function ( item ) { //ES5console.log( item );//a ,b ,c ;到1判斷為假結(jié)束遍歷,返回falseif ( typeof item == 'string' ) return item; }) var resault = arr.every( item =>{ //ES6if ( typeof item == 'string' ) return item; })console.log(resault); //false

    every()與filter()的區(qū)別是:
    后者會(huì)返回所有符合過(guò)濾條件的元素;
    前者會(huì)判斷是不是數(shù)組中的所有元素都符合條件,并且返回的是布爾值

    • some方法:只要數(shù)組中有一項(xiàng)在callback上就返回true
      every()與some()的區(qū)別是:前者要求所有元素都符合條件才返回true,
      后者要求只要有符合條件的就返回true

    Date 日期 對(duì)象

    • 創(chuàng)建 Date 對(duì)象: new Date()
    let d = new Date(); //Thu May 14 2020 14:27:45 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)let d = new Date(millisecond); //
    • Date 對(duì)象的方法

    Math 算數(shù) 對(duì)象

    執(zhí)行常見(jiàn)的算數(shù)任務(wù)。

    • toFixed() : 把 Number 四舍五入為指定小數(shù)位數(shù)的數(shù)字。
    var num =2.446242342; num = num.toFixed(2); // 輸出結(jié)果為 2.45
    • round(參數(shù)) : 四舍五入。舍入與數(shù)字最接近的整數(shù)
    Math.round(1); // 1 Math.round(2.4); // 2 Math.round(2.5); // 5 //不能真正的四舍五入,有精度問(wèn)題 可以通過(guò)以下方式來(lái)確保精度是正確的: var num =2.446242342; num = Math.round((num + Number.EPSILON) * 100) / 100; // 輸出結(jié)果為 2.45
    • random() :返回 0 到 1 之間的隨機(jī)數(shù)
    • max(參數(shù)1,參數(shù)2) :返回兩者的最大者
    • min(參數(shù)1,參數(shù)2) :返回兩個(gè)給定的數(shù)中的較小的數(shù)
    let a = 1, b = 2; let arr = [1,2,4,0] Math.max(a, b) // 2 Math.min(a, b) // 1 Math.max(...arr); // 4
    • abs(參數(shù)) :返回?cái)?shù)的絕對(duì)值
    • ceil(參數(shù)) : 向上取舍
    • floor(參數(shù)) : 向下取舍
    • toSource() :返回對(duì)象的各個(gè)屬性值
    Math.abs(-2) // 2 Math.abs(2) // 2Math.ceil(2.123) // 3 Math.floor(2.123) // 2

    RegExp 正則表達(dá)式 對(duì)象

    總結(jié)

    以上是生活随笔為你收集整理的Javascript 对象二(Number、String、Boolean、Array、Date、Math、RegExp)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。