JS数组补充和字符串的用法

276 阅读3分钟

数组增加新的数据

  • arr.push()方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度(重点)
  • arr.push(元素1,...,元素n)同时增加几个数组元素
  • arr.unshift(新增的内容)方法将一个或多个元素添加到数组的开头,并返回该数组的新长度

数组删除元素

  • arr.pop()方法从数组中删除最后一个元素,并返回该元素的值
  • arr.shift()方法从数组中删除第一个元素,并返回该元素的值(被删除的元素)

例如

let arr = [ 'red ', 'green' ]
arr.shift()
console.log(arr) //[ ' green ' ]

arr.splice()方法删除指定元素

arr.splice( start, deleteCount)
arr.splice(起始位置,删除几个元素)

解释

  • start起始位置:解释:
  • start起始位置:指定修改的开始位置(从0计数)
  • deleteCount:表示要移除的数组元素的个数,可选的。如果省略则默认从指定的起始位置删除到最后

补充

  1. 当数字和字符串同时出现时,使用 + 会连接而不是运算
    true 是 1 ,false 是 0, true+false=1
  2. 转义字符 \" \" \\ 在前边加反斜杠\
    “他说:\“好久不见\”

++的用法

  • ++i,先自加再使用
  • i++,先使用再自加
  • 单独使用都一样
  • i++ 有隐式转换,如果i为字符串“1”,i++=2,而i=i+1,不会转化为数值,而是字符串拼接成‘11‘
let i= 1
console.log(i++  +  ++i  +  i) ///7  因为变成 1+3+3

比较运算符

  • 比较运算符也有隐式转换 2>='2' // true
  • 开发常用 === 判断相等,而不是==
  • 尽量不要比较小数,因为精度问题 0.1 +0.2 ===0.3 // false
  • 比较运算符也会发生隐式转换

注意

  1. 比较运算的结果只有false 和true
  2. 逻辑运算&& 和 || 的结果为最后被执行的表达式值
  3. 逻辑短路只发生在&&和 || 之中,当满足一定条件,让右边代码不执行
  4. 先 && 后 ||

例如

console.log(10 || 20) //10
console.log(10 && 20) //20
console.log(undefined && 20) //undefined
console.lognull && 20) //null
console.log(5<3 && 10) // false 

有几个值当false 看

false 、 数字0, ‘’、undefinednullNaN

字符串方法

slice(开始的索引,结束的索引) 提取字符串片段 留头不留尾 不包括结束索引

  1. indexOf() 首次出现的索引位置
var h=hello;    
console.log(h.indexOf(“l”)) // 2
  1. lastIndexOf() 最后一次出现的索引位置
 // 找不到  会返回-1
// 也可以传两个参数
console.log(h.indexOf(“l”,3))  //从索引为3的地方开始找“l”首次出现的索引位置
console.loglastIndexOf(“l”,3)) //从索引为3的地方开始找“l”,并且会搜索到开头,“l”最后一次出现的索引位置
  1. substr(起始的索引,提取的长度)
  2. substring(起始的索引,结束的索引) 留头留尾 包括结束索引
  3. trim()去除字符串两边的空白
  4. includes() 查找字符串中是否包含指定的子字符串
var h ="hello"; 
console.log(h.includes("l"))//true 
  1. repeat() 复制字符串的指定次数,并把它们连接在一起
var h ="hello"; 
console.log(h.repeat(2))  //hellohello
  1. replace(被替换字符,新的字符)
var h ="hello"; 
console.log(h.replace("h","H"))  //Hello
  1. startsWith() 查看字符串是否以指定字符串开头
var h ="hello"; 
console.log(h.startsWith(“hel”)) //true

创建类 类名首字母大写

function Person(name,age,sex,hobby){
	this.name = name;
	this.age = age;
	this.sex = sex;
	this.hobby = hobby;
}

引用类 创建类的实例

var xiaoming = new Person("小明"20,“男”,function(){
                console.log("爱好跳舞")
})