-
.slice()
方法得到想要部分的截取,并且不会改变原数组 -
let arr = Array.from()
可以将原数组进行一份复制,这样对 arr 这个数组做改动的时候就不会对原数组有什么影响,记得小波老师说过,尽量不要改动原数组,那么Array.from()
方法将是可行的方法之一。 -
JSON.stringify()
JSON.parse()
也可以实现类似于Array.from()
方法的拷贝,只是处理对象一个是数组,一个是JSON -
parseInt(string,radix)
-
parseInt()
函数可解析一个字符串,并返回一个整数 - string 必需。需要被解析的字符串
- radix 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。如果省略该参数或者其值为 0 ,则数字将以 10 为基础来解析。如果它以 "0x" 或者 "0X" 开头,则以 16 为基数。如果该参数小于 2 或者大于 16 ,则
parseInt()
将返回 NaN. - 建议:虽然我们经常处理的是十进制的数字,并且 radix 参数不写的时候默认也是用十进制的,但是为了避免一些比较隐秘的坑(比如:[1,2,3].map(parseInt) 会隐式传值,造成错误,而且还不太容易找到),所以,个人建议,以后还是写上后面的 radix 比较好。
- 这个我之前是没写的,以后要注意
radix
加上了
- 这个我之前是没写的,以后要注意
-
-
parseInt(str,radix)
与Math.floor(x)
的关系-
parseInt()
侧重类型转换,比如String --> number
的转换;取整方法为强制取整(直接舍去小数部分) -
Math.floor(x)
可以处理任何类型的数字或者表达式,并且将 x 进行向下取整 - 比如:
parseInt(-1.5); // -1
Math.floor(-1.5); //-2
- 由于两者之间还是有一些差距的,所以个人认为还是根据不同的用途,分开使用两种方法比较好。
-
-
关于函数的封装
- 可以将功能比较独立的小代码块封装为一个函数,方便以后调用,而且 结构化思维 也更好一些
- 如果分装好的小函数的复用率比较高的话,可以将函数定义放到大函数外,方便其他函数重复调用,如果小函数使用次数很少,那可以将小函数直接放到调用该小函数的大函数内部
- 还有一个小建议,就是 输出性质的函数 和 逻辑处理性质的函数 不放在一起(具体原因暂时我也说不好)
-
分享完毕
-
阿弥陀佛 么么哒~~
网友评论