❶ js中的String 對象及其屬性(方法)
String 對象用於處理文本(字元串):
參數是要存儲在 String 對象中或轉換成原始字元串的值 ;
通過構造函數的方式也可以把數字類型轉成字元串類型;
let str = new String(123456);
console.log(str);
字面量的方式去創建一個字元串
let str = 'he k'
1、屬性 length 字元串的長度
整個字元串(無論是內部的空格還是外部的空格)都算成長度
console.log(str.length);
字元串有length屬性 也可以被遍歷
for(var i=0;i<str.length;i++){
console.log(str[i]); }
2、 charAt() 返回在指定位置的字元(註:字元串中第一個字元的下標是0)
如果寫的索引位置找不到對應的字元 會返回一個空字元串
let a = str.charAt(6);
console.log(a);
3、concat() 連接字元串
會返回一個新的拼接後的字元串
let newstr = str.concat('itty');
console.log(newstr);
4、 replace() 用於在字元串中用一些字元替換另一些字元,或替換一個與正則表達式匹配的子串 ;
replace會把第一參數(第一個參數是屬於原字元串的字元)替換成第二個參數裡面內容
原來的字元串不會受到影響,會返回一個新的替換後的字元串
let str = "hello world";
let a = str.replace('world','kitty');
console.log(a,str);
let str = 'abc123qwe456';
5、/\d/正則表達式 代表字元串裡面的第一個數字替換成nnn
/\d+/ 表示匹配字元串裡面的所有數字當成一個整體替換成nnn
let a = str.replace(/\d+/,'nnn')
因為/\d+/ 這段正則不是全局的,所以只會改變第一個匹配項(123整體)
因為/\d/ 這段正則不是全局的,所以只會改變第一個匹配項(1)
let a = str.replace(/\d/,'n')
想讓str中所有的數字都變成n
正則裡面的g表示全局的意思 str.replace(/\d/g,'n') 可以把字元串裡面的每一個數字都變成n
正則裡面的g表示全局的意思 str.replace(/\d+/g,'n')
把字元串裡面的所有數字當成一個整體都變成n
let a = str.replace(/\d/g,'n')
console.log(a);
sort會對原數組造成影響
let arr = [4,5,1,3]
let newarr = arr.sort();
console.log(arr[0]);
let str = 'abcdefg'
eg: 通過索引找到e charAt方法, 再寫一個字元串 aaaa 拼接到str上 並答應出來新的字元串 , 把abcd替換成hello 並把替換後的字元串列印出來;
let str = 'abcdefg';
console.log(str.charAt(4));
let str2 = 'aaaa';
let newstr = str.concat(str2);
console.log(newstr);
let rstr = str.replace('abcd','hello')
console.log(rstr);
function fn(){
arguments 參數集合 是一個類數組
類數組不具有數組的方法 比如push
arguments.push(5)
es6裡面提供了一個方法 Array.from
使用Array.from把類數組轉成真正的數組,這樣就可以使用數組的方法了 比如push pop
let arr = new Array()
let arr = Array.from(arguments)
arr.push(5)
console.log(arr); }
fn(1,2,3,4)
6、split() 把一個字元串分割成字元串數組
數組轉字元串
let arr = [1,2,3];
let str = arr.join('-');
console.log(str);
let str = 'hello';
split()不加參數 會把hello這個整體放到數組當中
str.split('') 把hello這個字元串 用空字元串分割 轉化為數組
str.split(',') 如果用字元串中不存在的字元分割 那麼還是會把整體放到數組中
str.split('e') 用e當作分割符 把字元串分割成數組 ['h','llo']
str.split('l') 用l當作分割符 會變成空字元串 因為有兩個l 所以會分割成用['he', '', 'o']
let arr = str.split('l');
console.log(arr);
7、 indexOf() 返回某個指定的字元串值在字元串中首次出現的位置(★首次很重要)
let str = 'hello'
str.charAt(1) => e
和數組的indexOf一樣
let index = str.indexOf('l');
console.log(index);
8、lastIndexOf() 返回一個指定的字元串值最後出現的位置
let str = 'hello'
let index = str.lastIndexOf('l');
console.log(index);
9、 match() 可在字元串內檢索指定的值,或找到一個或多個正則表達式的匹配
let str = 'he123llo456';
str.match('o') 使用match來檢索o 可以知道o在字元串內的信息,以數組的形式返回
比如o所在的索引,o所在的字元串和o的長度
let a = str.match('o')
console.log(a);
/\d+/ 代表匹配一段整體的數字
/\d/代表匹配一個數字 g代表全局
總體來說就是 在str字元串全局內 去查找一個一個的數字
會以一個數組的形式方式
不寫g 只會返回第一個 寫g 代表全局 會查找所有
let a = str.match(/\d+/g);
console.log(a);
10、 toLowerCase() 把字元串轉換為小寫
let str = "HELLO"
let str2 = str.toLowerCase();
console.log(str2);
11、 toUpperCase() 把字元串轉換為大寫
let str = 'hello'
let str2 = str.toUpperCase();
console.log(str2);
❷ 怎麼用js拿到一個對象裡面的屬性
使用for...in可以遍歷js對象的屬性,用法如下:
for...in 語句用於遍歷數組或者對象的屬專性(對屬數組或者對象的屬性進行循環操作)。
for ... in 循環中的代碼每執行一次,就會對數組的元素或者對象的屬性進行一次操作。
1
2
3
4
for (變數 in 對象)
{
//在此執行代碼
}
「變數」用來指定變數,指定的變數可以是數組元素,也可以是對象的屬性。
示例:
1
2
3
for (var sProp in window) {
alert(sProp);
}
以上例子會彈出window對象中的所有屬性
❸ 在javaScript中,怎樣看到對象的屬性和方法
藏在__proto__裡面,你多展開幾次就可以看到的。
至於為什麼呢。
我一是半會說不清。
我不一定理解正確。