Loading... # Javascript(二) ## 字符串 ### 属性和方法 获取长度:S.length; 获取字符串对应位置的字符值:S[index]; / S.charAt(index); 全部大写:S.toUpperCase(); 全部小写:S.toLowerCase(); 搜索字符字串出现的位置:S.indexOf("s"); 返回指定区间的子串: S.subString(start, end); 从索引为start(数字)开始到end(以大数作为end) S.substr(start, length); 从索引为start(数字)开始length个字符 eg: ~~~js S = "Hello Xherlock!"; console.log(S.substring(2, 5)); console.log(S.substr(2, 5)); // 输出结果 // llo // llo X ~~~ slice和subString很相似,只是在传入参数为负数时有所区分 substring传入负数自动变为0,而slice截取总长度+该负数 拼接字符串:S.concat(S1); 字符串分割:S.split("") // 每个字符分割 ~~~JS S = "Hello Xherlock!"; console.log(S.split("")); // 输出 /* [ 'H', 'e', 'l', 'l', 'o', ' ', 'X', 'h', 'e', 'r', 'l', 'o', 'c', 'k', '!' ] */ ~~~ 替换字符串:S.replace(old, new); ## 数组 ### 创建 var arr=[1,"hello","Xherlock"]; arr = new Array(1,"hello","Xherlock"); ### 属性和方法 arr.length; 获取数组长度 arr[index]; arr.indexOf(~); arr.lastIndexOf(); arr.slice(start, end); 返回索引为start到end(不包含end)的数组元素 arr.push() 接收变量并逐个加入数组末尾 arr.pop() 移除数组最后一个元素,长度减一 arr.unshift() 将参数传入数组开头,并返回数组长度 arr.shift() 删除数组第一项元素,并返回第一个元素值 arr.sort() 排序,自动将所有元素转为字符串,从头进行比较排序 arr.splice(start, end, ele1, ……elen); 删除:传入2个参数,第一个时删除位置,第二个为删除项数 插入:传入任意项参数,第一个为起始位置,其余为插入的项 替换:传入任意项参数,第一个为起始位置,第二个为要替换的项数,其余为被替换成的内容 arr.concat(); 组合,传入参数作为元素添加到数组中 arr.join("连接符"); 将数组元素用连接符连接成字符串 arr.reverse(); 反转数组元素顺序 arr.foreach(函数); 遍历循环数组,函数参数有遍历的数组内容、对应数组索引、数组本身 eg: ~~~js var arr = [1113, "Xherlock", "hello", 2021, "hello"]; arr.forEach(function(x, index){ console.log(index+" "+x); }); /* 0 1113 1 xherlock 2 hello 3 2021 4 hello */ ~~~ arr.map(函数); 映射,对数组中每一项运行给定的函数,返回结果数组 eg:全部大写 ~~~js var arr = [1113, "Xherlock", "hello", 2021, "hello"]; var arr1 = arr.map(function(value){ return value.toString().toUpperCase(); }); console.log(arr1); // [ '1113', 'XHERLOCK', 'HELLO', '2021', 'HELLO' ] ~~~ arr.filter(函数); 过滤功能 eg:除去数字 ~~~js var arr = [1113, "Xherlock", "hello", 2021, "hello"]; var arr2 = arr.filter(function(value){ if(isNaN(value)) // isNaN不是数字则返回true return value; }); console.log(arr2); // [ 'Xherlock', 'hello', 'hello' ] ~~~ arr.every(函数); 判断数组中每一项均满足条件才返回ture eg:判断是否均为字符串 ~~~js var arr = [1113, "Xherlock", "hello", 2021, "hello"]; var arr2 = [ 'Xherlock', 'hello', 'hello' ]; function isSting(value){ return isNaN(value); } // 判断是否均为字符串 var arr3 = arr2.every(isSting); console.log(arr3); var arr4 = arr.every(isSting); console.log(arr4); ~~~ arr.some(函数); 判断数组中是否存在满足条件的项,只要有一项满足就会返回true eg:同上 ~~~js var arr = [1113, "Xherlock", "hello", 2021, "hello"]; function isSomeString(value){ return isNaN(value); } var arr5 = arr.some(isSomeString); console.log(arr5); var arr6 = [1, 2, 3]; console.log(arr6.some(isSomeString)); ~~~ arr.reduce(函数); 首先从数组中取出前两个元素,按照reduce中的函数进行计算,所得结果和下一个继续按照该函数计算,直到最后一个设置的元素,返回最终结果 arr.reduceRight(函数); 和reduce顺序相反 eg:求乘积 ~~~js var arr7 = [2, 45, 4]; result = arr7.reduce(function(pre, cur){ return pre*cur; }) console.log(result); ~~~ ## 对象 对象名.属性名; / 对象名[属性名]; 判断是否存在某一属性:"属性" in 对象; / 对象.hasOwnProperty("属性"); 最后修改:2021 年 11 月 14 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 0 如果觉得我的文章对你有用,请随意赞赏