【js】js随笔

JS 数组


通过数组下标获取数组

arr[0]

数组长度

arr.length

for…of循环(ES6)

for (element of iterable) {
  console.log(element);
}

数组遍历

原数据:

res = [
{
id:1,
name:‘西安’,
address:‘西部’
},
{
id:2,
name:‘扬州’,
address:‘南部’
}
]

需求一:

结果:

res = [12]

代码:

var result = []
res.forEach(item => {
   	result.push(
       	item.id
    )
})

需求二:

结果:

res = [
{
id:1,
name:‘西安’
},
{
id:2,
name:‘扬州’
}

方法一:

const ary = res.map((item) => {
	return {
		id:item.id,
		name:item.name
	} 
})

方法二:

res.forEach(item => {
  ary.push({
    id: item.id,
    name: item.name
  })
})

字符串

split

str.split(",")

JS一些常用方法


JS数字转字符串的方法(number to string)

  1. 括号先计算再转换
(10).toString();
  1. 加空串
10 + ''

push()

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

arrayObject.push(newelement1,newelement2,....,newelementX)
参数描述
newelement1必需。要添加到数组的第一个元素。
newelement2可选。要添加到数组的第二个元素。
newelementX可选。可添加多个元素。

返回值

把指定的值添加到数组后的新长度。

shift()

定义和用法

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

语法

arrayObject.shift()

返回值

数组原来的第一个元素的值。

说明

如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。请注意,该方法不创建新数组,而是直接修改原有的 arrayObject。

unshift()

定义和用法
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

语法

arrayObject.unshift(newelement1,newelement2,....,newelementX)

参数 描述
newelement1 必需。向数组添加的第一个元素。
newelement2 可选。向数组添加的第二个元素。
newelementX 可选。可添加若干个元素。

返回值

arrayObject 的新长度。

说明

unshift() 方法将把它的参数插入 arrayObject 的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。

请注意,unshift() 方法不创建新的创建,而是直接修改原有的数组。

Math 对象方法:

Math.ceil();  //向上取整。
Math.floor();  //向下取整。
Math.round();  //四舍五入。
Math.random();  //0.0 ~ 1.0 之间的一个伪随机数。【包含0不包含1】 //比如0.8647578968666494

案例:

Math.ceil(Math.random()*10);      // 获取从1到10的随机整数 ,取0的概率极小。

Math.round(Math.random());   //可均衡获取0到1的随机整数。

Math.floor(Math.random()*10);  //可均衡获取0到9的随机整数。

Math.round(Math.random()*10);  //基本均衡获取0到10的随机整数,其中获取最小值0和最大值10的几率少一半。

Math.round(10.11 ,2);
//因为结果在0~0.4 为0,0.5到1.4为1  ...  8.5到9.4为9,9.5到9.9为10。所以头尾的分布区间只有其他数字的一半。

生成[n,m]的随机整数的函数

//生成从minNum到maxNum的随机数

function randomNum(minNum, maxNum) {
  switch (arguments.length) {
    case 1:
      return parseInt(Math.random() * minNum + 1, 10);
      break;
    case 2:
      return parseInt(Math.random() * ( maxNum - minNum + 1 ) + minNum, 10);
      //或者 Math.floor(Math.random()*( maxNum - minNum + 1 ) + minNum );
      break;
    default:
      return 0;
      break;
  }
} 

Math.random() 生成 [0,1) 的数,所以 Math.random()*5 生成 {0,5) 的数。

parseInt() 可以简单理解成返回舍去参数的小数部分后的整数,所以 parseInt(Math.random()*5) 生成的是 [0,4] 的随机整数。

posted @ 2022-11-10 19:26  彬在俊  阅读(16)  评论(0编辑  收藏  举报