javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > js引用、变量、打印、交互、定时器

js基本内容之引用、变量、打印、交互、定时器、demo操作实例

作者:好好研究

在JavaScript中变量用于存储数据,并可以在程序执行过程中动态更改,变量可以存储各种类型的数据,如数字、字符串、对象、函数等,这篇文章主要介绍了js基本内容之引用、变量、打印、交互、定时器、demo操作的相关资料,需要的朋友可以参考下

javascript是弱类型语言。

一、js的引用

注意:两种方式不能同时使用。

内嵌式

基本格式

<head>
  <!-- 内嵌式 -->
  <script>
    <!-- 在此处写js内容 -->
  </script>
</head>

外引

基本格式

<head>
  <!-- 外因 -->
  <script src=""></script>
</head>

二、变量

1. 基本类型:五种

数字

var a = 10
var b = 10.5
console.log(a)
console.log(b)

字符串

var c = 'demo'
var d = "nihao"
console.log(c)
console.log(d)

布尔类型

var e = true
var f = false
console.log(e)
console.log(f)

undefined未下定义的

var g
console.log(g)

null空

var h = null
console.log(h)

2. 复合类型:三种

(1)数组

基本格式

var arr = []

示例:

var arr = [50.8,70,"demo",true,undefined,null,[80,64.6,"aaa"]]
console.log(arr)
console.log(arr[6])// 通过下标访问
console.log(arr[6][2])//访问下标为6数组中的下标为2的内容
console.log(arr.length)//获取数组的长度

(2)对象

基本格式

var obj = {
  属性1:属性值1,
  属性2:属性值2,
}

示例:

var obj = {
  name:"zhangsan",
  age:20,
  play:['足球','乒乓球','篮球'],
  friend:{
    name:"lisi",
    age:21
  }
}
console.log(obj)
console.log(obj.name) // 获取属性值
console.log(obj.play.length) // 获取play数组属性值的长度
console.log(obj.play[2]) // 通过play数组下标获取

(3)函数

基本格式

// 命名函数
function 函数名(参数列表) {
}
函数名(参数值) // 函数调用
// 匿名函数
var 变量名 = function(参数列表){
}
变量名(参数值) // 函数调用

示例:

// 命名函数
function change(a, b) {
  console.log(a)
  console.log(b)
  console.log("change函数执行啦")
}
console.log(change)
change(10, ["demo", 8])

// 匿名函数
var eat = function(a, b) {
  console.log(a)
  console.log(b)
  console.log("匿名函数调用啦")
}
console.log(eat)
eat()

塞到数组中:

var arr = [50.8,70,"demo",true,undefined,null,[80,64.6,"aaa"],function change(a, b) {
  console.log(a)
  console.log(b)
  console.log("数组函数执行啦")
}]
arr[7]() // 通过数组的小标调用

塞到对象中:

var obj = {
  name:"zhangsan",
  age:20,
  play:['足球','乒乓球','篮球'],
  friend:{
    name:"lisi",
    age:21
  },
  jump: function change(a, b) {
    console.log(a)
    console.log(b)
    console.log("对象函数执行啦")
  }
}
obj.jump() // 通过属性调用函数

三、打印

console:提供访问浏览器调试控制台的方法

console.dir(document) // 可以在控制台查看文档中存在的属性

四、交互

窗口

window指整个浏览器的窗口

交互

交互方法

以下示例均为函数调用方法。
示例1:

document.onclick = function() {
  alert(1) // 绑定事件:点击之后,出现弹窗
}

示例2:

document.onclick = function() {
  document.body.style.background = "red" // 绑定事件:点击背景变红
}

示例3:

document.onclick = function() {
  console.log(Math.random()) // 绑定事件:每点击一次,生成0到1之间的数据,并向上取整
}

示例4:

document.onclick = function() {
      console.log(Math.ceil(Math.random()*255)) // 绑定事件:每点击一次,生成数据,并向上取整
}

示例5:

document.onclick = function() {
  console.log(Math.ceil(Math.random()*255)) // 绑定事件:每点击一次,生成数据,并向上取整
  document.body.style.background = 'rgb('+ Math.ceil(Math.random()*255)+' , '+ Math.ceil(Math.random()*255)+','+ Math.ceil(Math.random()*255)+')' // 绑定事件:每点击一次,背景颜色随机生成
}

五、定时器

周期定时器

var i = 0
var timer1 = setInterval(function() {
  console.log(i)
  i++
},2000)
var timer2 = setInterval(function() {
  console.log("-------------")
  i++
},2000)
var timer3 = setInterval(function() {
  console.log("*************")
  i++
},2000)
console.log("定时器标志变量" + timer1)
console.log("定时器标志变量" + timer2)
console.log("定时器标志变量" + timer3)
clearInterval(timer3)

从图中可以看出timer3还没开始九停止了,可以加判断。

var i = 0
var timer = setInterval(function() {
  if(i>=5){
    clearInterval(timer)
  } // i>=5之后,停止定时器
  console.log(i)
  i++
},2000)

延迟定时器

  var timer = setTimeout(function() {
    console.log('aaa')
  },2000)

六、dom操作

1. 通过文档查找

<body>
  <div class="aaa">hello</div>
  <div id="bbb">html</div>
  <p class="bbb">world</p>
  <span class="aaa">demo</span>
</body>
window.onload = function() {
  var obj = document.getElementById("bbb")
  obj.onclick = function() {
    obj.style.width = '50px'
    obj.style.height = '50px'
    obj.style.background = 'red'
  }
}

window.onload = function() {
  var arr = document.getElementsByClassName("aaa")
  for(var i=0;i<arr.length;i++){
    arr[i].onclick = function() {
      this.style.display = 'block'
      this.style.width = '50px'
      this.style.height = '50px'
      this.style.background = 'red'
    }
  }
}

window.onload = function() {
	var arr = document.getElementsByTagName("div")
	console.log(arr)
}

window.onload = function() {
	var obj = document.querySelector(".aaa")
	var arr = document.querySelectorAll(".aaa")
	console.log(obj)
	console.log(arr)
}

2. 通过关系查找

<body>
  <ul>
    <li>demo1</li>
    <li>demo2</li>
    111
    <li id="aa">1
      <span>xxx</span>2
      <p>yyy</p>3
      <h5>zzz</h5>4
    </li>
    222
    <li>demo3</li>
  </ul>
</body>
window.onload = function() {
  var obj = document.getElementById("aa")

  // 找父级
  console.log(obj.parentNode)
  console.log(obj.parentElement)
}

window.onload = function() {
  var obj = document.getElementById("aa")

  // 找孩子
  console.log(obj.childNodes)
  console.log(obj.children)
}

window.onload = function() {
  var obj = document.getElementById("aa")

  // 第一个孩子
  console.log(obj.firstElementChild)
  console.log(obj.firstChild)
}

window.onload = function() {
  var obj = document.getElementById("aa")

  // 最后一个孩子
  console.log(obj.lastElementChild)
  console.log(obj.lastChild)
}

window.onload = function() {
  var obj = document.getElementById("aa")

  // 找上一个元素
  console.log(obj.previousElementSibling)
  console.log(obj.previousSibling)
}

window.onload = function() {
  var obj = document.getElementById("aa")

  // 找下一个元素
  console.log(obj.nextElementSibling)
  console.log(obj.nextSibling)
}

3. 修改 获取

改内容、改样式、改属性,前两者的本质也就是修改属性。

<body>
  <div id="aa" style="background: red;" class="xx" index="bb">hello</div>
  <input type="submit">
</body>

(1)改内容

它的三个属性
window.onload = function() {
  var obj = document.getElementById("aa")
  console.log(obj)

  // 只适用于展示的标签
  obj.innerText = "新内容"
  obj.innerHTML = "<h1>新内容</h1>"
}

(2)改样式

window.onload = function() {
  var obj = document.getElementById("aa")
  console.log(obj)

  // 改样式
  obj.style.background = 'pink'
  obj.style.color = 'green'
}

(3)改属性

window.onload = function() {
  var obj = document.getElementById("aa")
  console.log(obj)
  
  // 改属性
  // 自定义属性
  console.log(obj.getAttribute("index"))
  obj.setAttribute("demo", 'xxx')
}

4. 添加

5. 删除

window.onload = function() {
  // 删除
  // var container = document.getElementById("container")//通过选择器找父级
  var p = document.querySelector("p")
  // container.removeChild(p)

  // 通过关系找父级元素
  p.parentElement.removeChild(p)
}

总结 

到此这篇关于js基本内容之引用、变量、打印、交互、定时器、demo操作的文章就介绍到这了,更多相关js引用、变量、打印、交互、定时器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文