分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

重头再学JS(3)— 引用类型

发布时间:2023-09-06 02:20责任编辑:彭小芳关键词:暂无标签

Object

  • 获取字符串中的单个字符

    字符串.charAt(index);
    字符串[index];      // 推荐使用
  • 字符串的拼接 和 截取

    // 拼接
    字符串.concat(str1,str2,str3...);
    拼接符 +     //推荐使用
    ?
    // 截取
    字符串.slice(star,end);
  • 查询字符是否在字符串中存在

    字符串.indexOf(); 
    字符串.lastIndexOf();
  • 去除空白符

    字符串.trim();  // 去除字符串两边的空格
  • 字母字符大小写转换

    字符串.toUpperCase(); ?// 转换大写 重点
    字符串.toLowerCase(); ?// 转换小写 重点
  • 字符串替换

    字符串.replace(newStr,oldStr);
  • 字符串分割

    字符串.split(sp);  // 把一个字符串分割成字符串数组。

判断一个字符串中出现最多的字符和出现的次数

 ?<script> ???/* 判断一个字符串中出现最多的字符和出现的次数 */ ???var str = ‘aabbccddd‘; ???var obj = {}; /* 定义一个空的对象来接收结果 */ ???for (var i = 0; i < str.length; i++) { ?????/* charAt获取字符串的索引 */ ?????/* 判断obj是否存在一个为 obj[str.charAt(i)] 的键 ????????如果不存在,那么就添加这个键,并且赋值为 1 ?????????如果已经存在这个键,那么就给这个键的值加1 */ ?????if (!obj[str.charAt(i)]) { ???????obj[str.charAt(i)] = 1; ?????} else { ???????obj[str.charAt(i)]++; ?????} ???} ???console.log(obj); ???/* 假设一个为0的值 和 一个空的字符串来存放键 ???for in 遍历obj对象 然后把每一个值和max对比 ???然后获取最大的值max 和 最大值对应的键maxno */ ???var max = 0; ???var maxno = ‘‘; ???for (var k in obj) { ?????if (obj[k] > max) { ???????max = obj[k]; ???????maxno = k; ?????} ???} ???console.log(max + ‘ ‘ + maxno); ?</script>

Array

向数组前后添加元素
// ?向数组的开头添加一个或更多元素,并返回新的长度。【原数组会发生变化】 数组名.unshift(newelement1,newelement2,....,newelementX);// 向数组的末尾添加一个或更多元素,并返回新的长度 【原数组会发生变化】数组名.push(newelement1,newelement2,....,newelementX); 
从数组前后删除元素
// 删除并返回数组的第一个元素 【原数组会发生变化】数组名.shift();// 删除并返回数组的最后一个元素 【原数组会发生变化】数组名.pop();
数组任意位置的添加、删除
// 向/从数组中添加/删除项目,然后返回被删除的项目。【原数组会发生变化】数组名.splice(index,howmany,item1,.....,itemX)参数: ???index 从哪个位置开始删 ???数字 ???howmany 删除几个 ???数字 ???item1,.....,itemX ??新添加的数据(可以是多个) ?可选 ????var arr = [1,2,3]; console.log(arr.splice(2,0,4,5,6)); console.log(arr);
数组元素的查询
// 返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1数组名.indexOf(searchElement); 【用的较多】// 返回指定元素在数组中的最后一个的索引,如果不存在则返回 -1。从数组的后面向前查找数组名.lastIndexOf(searchElement);
数组的反转 和 排序
// 颠倒数组中元素的顺序。返回颠倒后的数组 【原数组会发生变化】数组名.reverse();// 对数组的元素进行排序 数组名.sort(); ??// 默认排序顺序是根据字符串Unicode编码 【了解】数组名.sort(function(a,b){ ???//【重点】 ?return a - b; ??// 升序(从小到大)})数组名.sort(function(a,b){ ???//【重点】 ?return b - a; ??// 降序(从大到小)})
数组截取
// 从已有的数组中返回选定的元素。【截取后,不会改变原数组,而是返回新的数组】数组名.slice(start,end);
数组元素的拼接
// 用于把数组中的所有元素放入一个字符串。数组名.join(separator);var arr = [ 1, 2, 4, 90, 67, 5, 434, 64];var str = arr.join(‘?‘);console.log( typeof arr);//object类型console.log( str);
用于连接两个或多个数组

语法:arr.concat(arrayX,arrayX,......,arrayX)

返回值:返回一个新的数组。该数组是通过把所有 arrayX 参数添加到 arr中生成的。如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组。

// 案例一var a = [1,2,3];console.log(a.concat(4,5)); //[1,2,3,4,5]// 案例二var arr =[‘one‘,‘two‘,‘three‘];var arr1 = [‘four‘,‘five‘,‘six‘];console.log(arr.concat(arr1)); // ["one", "two", "three", "four", "five", "six"]// 案例三var arr =[‘one‘,‘two‘,‘three‘];var arr1 = [‘four‘,‘five‘,‘six‘];var arr2 = [‘seven‘,‘eight‘,‘nine‘];console.log(arr.concat(arr1,arr2)); //["one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
迭代方法
// 数组遍历数组名.forEach(function(value,index,currentArray){ ?console.log(value);});/*第一个参数是遍历的数组内容 ?第二个参数是对应的索引 ?第三个参数数数组本身 */
 ???????let arr = [1,2,3,4,5,6,5,4]; ???????var everyResult = arr.every(function(item,index,array){ ???????????return (item > 2) ???????}) ???????// 判断数组中的每一项都符合return后的条件,返回 true & false ???????console.log(everyResult) ???????var someResult = arr.some(function(item,index,array){ ???????????return (item > 2) ???????}) ???????// 判断数组中的每一项只要有一项符合return后的条件,返回 true & false ???????console.log(someResult) ???????var filterResult = arr.filter(function(item,index,array){ ???????????return (item > 2) ???????}) ???????// 判断数组中的项符合条件,符合的项组成一个新的数组 ???????console.log(filterResult) ???????var mapResult = arr.map(function(item,index,array){ ???????????return (item - 2) ???????}) ???????// 对数组的每一项进行相同的计算,返回新数组 ???????console.log(mapResult)

重头再学JS(3)— 引用类型

原文地址:https://www.cnblogs.com/houfee/p/9894318.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved