【前端】JavaScript学习笔记(二)——数据类型


?课程链接

【狂神说Java】JavaScript最新教程通俗易懂_哔哩哔哩_bilibili


?学习笔记

字符串




    
    Title

    






数组


Array可以包含任何的数据类型

let arr = [1, 2, 3, "1", "2"]

长度

arr.length

注意:如果给 arr.length 赋值 数组大小会发生变化 如果赋值过小元素就会丢失

indexOf

通过元素获得下标索引

arr.indexOf(1)
arr.indexOf("2")

slice()

截取Array的一部分 返回一个新数组 类似String中的substring

arr.slice(0, 1)

push() pop() 尾部

arr.pop()
arr.push()

unshift() shift() 头部

arr.unshift()
arr.shift()

排序

arr.sort()

元素反转

arr.reverse()

concat()

注意:并没有修改数组 只是返回一个新的数组

console.log(arr.concat(["A"]))

连接符 join

打印拼接数组 使用特定的字符串连接

arr.join("-")

多维数组


对象

若干个键值对

{...}表示一个对象

键值对描述属性 xxx:xxx

多个属性之间使用逗号隔开 最后一个属性不加逗号!

var person = {
  name: "test",
  age: 3,
  email:"test@163.com",
  score: 0
}

js中的所有键都是字符串 值是任意对象!

对象赋值


使用一个不存在的对象属性 不会报错!undefined


动态地删减属性 通过delete删除对象的属性


动态地添加属性 直接给新的属性添加值即可

person.temp = "temp"

判断属性值是否在对象中

"age" in person
true
// 继承
"toString" in person
true

判断一个属性是否是这个对象自身拥有的

person.hasOwnProperty("toString")
false
person.hasOwnProperty("age")
true

流程控制

if 判断


while 循环

while(true){
  alert("避免程序死循环")
}

do{
  alert("避免程序死循环")
}while (true)

for 循环


forEach 循环

ES 5.1 引入

let arr = [1, 2, 3, "1", "2"]
arr.forEach(function (value){
  console.log(value)
})

for...in

// for(index in object){}
for(let num in arr){
  if (arr.hasOwnProperty(num)){
    console.log("exist!")
    console.log(arr[num])
  }
}

for...of

// for(elem in object){}
let arr = [1, 2, 3]
for (let x of arr){
    console.log(x)
}

Map 和 Set




    
    Title

    






iterator




    
    Title

    







?转载请注明出处

本文作者:双份浓缩馥芮白

原文链接:

版权所有,如需转载请注明出处。