Day5 JS对象与数据转换

Date

  • 新建:
    1 new Date() //获得当前电脑的系统时间
    2 new Date(milliseconds) // 设置从1970年1月1日0点+指定毫秒数的日期
    date.getTime 得到当前日期-1970年1月1日0点的毫秒数
    3 new Date(“2020/1/11 12:00:00”) //通过指定字符串格式 格式需指定
    4 new Date(年,月,日,时,分,秒,毫秒) //注意,设置月份时,月份从0开始计算(java中:星期几也是从星期日开始算)
  • 显示
    获得日期:
    getFullYear() //获得年份
    getMonth() //获得月份,同样从0开始,月份要加+1
    getDate() //获得日期
    getDay() //获得星期,JS从1开始,不用+1
    getHours() //小时数
    getMinutes() //分钟数
    getSeaconds() // 获得秒数
    当想设置时间时候,把get换成set即可,格式与get后的相同。其中
    setFullYear(年,月,日) 设置具体日期,也可只设置年份
  • 日期的比较
    直接比较,越新的越大

Math

静态类,无需创建实例,用于进行数学运算
max() //注:不可传参数组,需通过apply等进行金酸
min()
random()//0-1之间的随机数
round() //四舍五入的整数(注意,负数也是舍去符号看的)
Math.Pi 圆周率

RegExp 正则

正则表达式的显示:var patt = /表达式内容/修饰符;var pat = new RegExp (表达式内容)
注:前后不加双引号
修饰符:
i代表对大小写不敏感 g 全局匹配 ……………………
方法:
表达式.test(变量) 查看变量是否符合表达式,返回boolean值
变量.search(表达式) 返回变量符合表达式的开始字符的位置,没有则返回-1
变量.replace(表达式1,表达式2) 查找符合表达式1的内容,替换为表达式2 ,返回被替换的被替换字符串,没有找到则返回原字符串
表达式.exec(变量) 查看变量的第一个符合表达式的内容,如果没有则为null

数据转换

  • 数字 字符串转换
    1、new String(数字类型变量)
    2、数字变量.toString()
    3、toFixed()后 返回的为字符串
    4、拼接空字符串""
  • 字符串 数字转换
    1、new Number(数字类型变量)
    2、进行数学运算,如“* 1”、“+0”等
  • boolean与字符串
    1、new String() 2、 toString()
  • boolean与数字
    1、进行数学运算 2 new Number()
  • 数字、字符串转 boolean
    参见昨天说明 非0均为true 采用new Boolean(变量)转换
  • 日期 字符串 转换
    参见Date章节
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用 JavaScript 的 Set 结构来去除数组中的重复数据。 Set 是一种新的数据结构,它类似于数组,但是成员的值都是唯一的,没有重复的值。 例如,要去除数组 `[1, 2, 3, 1, 2]` 中的重复数据,可以这样写: ``` const arr = [1, 2, 3, 1, 2]; const unique = [...new Set(arr)]; // unique 现在是 [1, 2, 3] ``` 首先,将原数组转换为 Set 结构,然后使用扩展运算符(...)将 Set 转换回数组。 这样就可以得到一个新的数组,其中包含了原数组中的所有唯一值。 如果你想在 map 函数中使用这个方法,可以这样写: ``` const arr = [1, 2, 3, 1, 2]; const unique = arr.map(x => x).filter((x, i, a) => a.indexOf(x) === i); // unique 现在是 [1, 2, 3] ``` 在 map 函数中,我们使用了一个简单的转换函数,将每个元素映射为自身。然后,使用 filter 函数过滤掉重复的元素。这个方法基于 indexOf 函数,它返回给定元素在数组中第一次出现的位置。如果这个位置与当前元素的位置相同,则表示当前元素是唯一的,需要保留。 ### 回答2: 要将重复的数据从Map中移除,可以使用以下方法: 1. 创建一个新的Map对象,用于存储没有重复数据的键值对。 2. 遍历原始的Map对象,使用forEach方法来获取每个键值对。 3. 在遍历中,检查新的Map对象中是否已经存在相同的键。如果不存在,则将该键值对添加到新Map对象中。 4. 最后,新的Map对象中的键值对即为去重后的数据。 下面是一个示例代码: ```javascript // 原始的Map对象 let map = new Map(); map.set(1, 'apple'); map.set(2, 'banana'); map.set(3, 'apple'); map.set(4, 'orange'); map.set(5, 'banana'); // 创建一个新的Map对象 let newMap = new Map(); // 遍历原始Map对象并将非重复数据添加到新的Map对象中 map.forEach((value, key) => { if (!newMap.has(value)) { newMap.set(value, key); } }); // 输出去重后的数据 console.log(newMap); ``` 输出结果为: ``` Map { 'apple' => 1, 'banana' => 2, 'orange' => 4 } ``` 这样就成功地去除了原始Map中的重复数据。 ### 回答3: 在JavaScript中,可以通过使用Set数据结构去除Map中的重复数据。 要去除Map中的重复数据,可以按照以下步骤进行操作: 1. 首先,将Map中的所有值提取出来,并保存到一个数组中。 2. 创建一个新的Set实例,并将上一步中的数组作为Set的参数传入,Set会自动去除数组中的重复元素。 3. 将Set转换为数组,可以使用Array.from()函数或者扩展运算符(...)。 4. 最后,可以根据需要,将去重后的数组转换为Map等其他数据结构,或者进行其他操作。 以下是一个示例代码: ```javascript let map = new Map(); map.set('key1', 'value1'); map.set('key2', 'value2'); map.set('key3', 'value1'); // 有重复的value let valuesArray = Array.from(map.values()); // 将Map的value提取为数组 let uniqueValues = [...new Set(valuesArray)]; // 使用Set去除重复的value,并转换为数组 console.log(uniqueValues); ``` 在上述代码中,valuesArray数组保存了Map中的所有value,然后通过Set去除了其中的重复元素,并将结果转换为数组uniqueValues。 需要注意的是,Set是一种无序的数据结构,它会自动去除重复元素。如果在Map中有重复的value,Set去除重复元素后的顺序可能与原始Map的顺序不一致。如果顺序是很重要的,可以考虑使用其他的数据结构或自行编写去重函数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值