JavaScript入门——笔记用

JavaScript入门

    • 变量
    • 数组
    • 常量
    • 模板字符串
    • 检测数据类型
    • 判断
    • 分支判断
    • 循环
    • 数组
    • 函数
    • 对象

与html和css不同的是js并不是一门标记语言,而是与java等相同,也是一门编程语言(实现人机交互的运行在客户端即浏览器的编程语言)

JavaScript作用:

  • 1、网页特效(监听用户行为让网页做出对应反馈)
  • 2、表单验证(针对表单数据做合法性判断)
  • 3、数据交互(获取后端数据,渲染到前端)
  • 4、服务端编程(node.js)

JavaScript入门——笔记用_第1张图片

输出语法:

  • 文档输出内容:document.write(‘xxxxx’)
  • 页面弹窗:alert(‘xxxxxx’)
  • 控制台日志打印输出:console.log(‘xxxxx’)

输入语法:

  • 页面弹窗提示框:prompt(‘xxxxxx’)
    alert()与prompt()会跳过页面渲染先被执行

变量

存储数据的容器

不推荐使用var、重要的事情要加重,不推荐使用var哦,目前几乎已经淘汰它咯

//声明变量:let 变量名
let age
//赋值:变量名 = 赋值
age = 18
console.log(age)
//变量初始化
let name = 芋头

数组

//数组初始化: let 数组名 = [数据1 , 数据2 , 数据3]
let ages = [18 , 19 , 20]
//splice(x , y)从x下标开始删除y个元素
ages.splice(0 , 1)

常量

const声明表示内存地址不可改变,当声明为数组时,数组中数据仍可改变哦

 const PI = 3.14

模板字符串

外面用反引号里面变量“${变量名}”

let age = 22
document.write(`芋头今年${age}岁了  `)

检测数据类型

//typeof 数据
let age = null 
typeof age

判断

" == " :值相等
" === " :完全相等
" != " : 值不相等
" !== " : 完全不相等

if (1 != '1'){
	console.log('相等')
} else {
	console.log('不相等')
}

分支判断

case做的判断是全等于判断哦~~

	let num1 = +prompt("输入第一个数")
   switch (num1){
    case 1: 
      alert("一") 
      break
    case 2:
      alert("二")
      break
    default:
      alert("不是一和二")
      break
      
   }

循环

while、do…while ; for
break:退出整个循环 ; continue:结束本次循环继续下一次循环

 		let num = 0
        while (num < 10){
            document.write(`现在这个数是${num}
`
) num ++ } do { document.write(`现在这个数是${num}
`
) num ++ } while (num < 20) for (;num < 30 ; num ++){ document.write(`现在这个数是${num}
`
) }

JavaScript入门——笔记用_第2张图片

数组

  • 添加
    let arr = ['张飞', '赵云']
    // 新增  push 推末尾并返回该数组的新长度
    console.log(arr.push('黄忠'))  
    arr.push('马超', '关羽')
    console.log(arr)
    // 开头追加 并且返回数组新长度
    arr.unshift('吕布')
    console.log(arr)
  • 删除
 let arr = [0 , 1 , 2 , 3 , 4 , 5]
    //pop():删除最后一个元素并返回该元素的值
    arr.pop()
    console.log(arr)
    //shift():删除第一个元素并返回元素的值
    arr.shift()
    //splice(start , deleteCount):从start位置开始删除deleteCount个元素
    arr.splice(0 , 2)

函数

//交换a , b的值
    let a = 10 
    let b = 20
    console.log(`a 现在的值是:${a};b现在的值是:${b}`)
    serve(a,b)
    function serve(a , b) {
      let temp = a 
      a = b
      b = temp
      console.log(`a 现在的值是:${a};b现在的值是:${b}`)
    }
    //实际不会换,实参与形参问题

函数内部不声明直接复制的变量会当作全局变量处理

    let num = 10 
    function fun (){
	    //let num = 20   局部变量使用不影响num
 	    num = 20     //全局变量会影响num的值
    }
    fun()
    console.log(num)

函数在查找变量时会一层一层向外查找

当然这里还得提一嘴立即执行函数,话不多说如下代码所示

//立即执行函数不需要调用会直接执行函数里的内容
(function(){
	console.log("这是一个立即执行函数")
})();

(function(a , b){
	console.log(a + b)
})(10 , 20);

对象

    let man = {
      name: "芋头",
      num: 22,
      sex: "男",
      powers: function (a) {
        console.log(`make ${a} fly`)
      }
    }
    console.log(man.name)
    console.log(man["sex"])
    console.log(man.powers("person"))
    delete man.sex//删除属性

你可能感兴趣的:(前端,javascript,笔记)