Java script

Java script

Java scirpt是一门脚本语言
作用:主要用来给HTML网页增加动态功能

  • 通常的js,是运行在浏览器环境下的
  • js的两种模型:
    • DOM:文档对象模型 。 操作对象:document
    • BOM:浏览器对象模型 。 操作对象:window
  • node.js运行在计算机环境下,服务器技术。不能操作BOM和DOM。但是它可以操作文件,数据库。
    实际上是一门后端技术。
JS解释器(不同的浏览器,js的解释器不一样,但是揭示出来的效果是一样的):
浏览器 解释器
Chrome v8
Sarfari AjavaScriptCore
node v8
补充内容:
名字
ECMAS cript(es) 是一套规范,js的语法
Java scirpt() es具体的实现

Java script的编写:

  • 建议编写位置在body标签的最后(body结束标签的上面),为了等到页面上所有东西都加载完毕后,再加载出来
  • 建议使用外部引入

Java sript的数据类型

名称 英文
数字 number
字符串 string
布尔型 boolean
“上述三个可以自动类型推断,是弱类型”
null
未定义 undefined
非数字 NaN(Not a Number)

变量的声明

var/let v1 = 10var/let v2 = '你好'(单引号,双引号都可以)
var/let v3 = true
var/let v4 = null

es6声明变量语法:

我们可能会遇到下面问题

var num = 1;
var num = 2;
documrnt.write(num)
结果得到了2,相当于21覆盖掉了,非常危险,可能从外部引入了许多js,结果相同变量只能读一个值

解决办法(使用es6语法中,新的关键字):

let num = 1;
let num = 2;
document.writeln(num)
结果会报错

常量的定义:

const num = 1;

数组的声明:

let v1 =[12345]
定义一个空数组:m
let arr = Array();
js中的数组没有下标越界
在js中,没有“方法”,Java中的方法,在这里叫做函数
在js中,函数可以当作类来使用

如下:

let arr = new Array()
可以将js中的数组,理解为Java中的集合

js的函数(也就是Java里的方法)

函数定义:

  function 方法名 (){
  
        
    }

函数调用:

方法名()

函数返回值:

关键字reuturn:
return可以终止函数的运行
js的函数,不可以“方法重载”“方法重写”
js的函数如果需要参数但没有传,不会报错,会输出NaN

js的对象:

对象的声明

let v8 = {
"username":"admin",
"password":"123456",
"id":1001
}
document .write(v8.username)获取对象属性的值

使用Object返回一个空对象:

let obj = new Object();

使用函数来定义一个类:

function User(name){
this.name =name
}
根据上面的类来创建一个对象
 let user = {
 "name" = "张三"
 }

js对象的方法

let obj = Object();
对象的属性
obj.name="张三";
obj.age =20;
对象的方法
obj.eat = function() {
console.log("我在吃东西")
}

第二种方法
let teacher = {
name:xxx
age:
drink:function(){
	console.log("我在喝酒")
}
}

js里的判断和循环:

let a = 1;
if(a = 2){
   console,log("哈哈哈");
}
  • 上述这个例子中,if(a = 2)其实不是一个判断,而是一个赋值语句。
    if中的"哈哈哈"一定会出来。a的值是2

  • 在js中的判断中,0是false;null是false;undefine是false
    其他的都是true

js中没有增强for循环:
普通for循环
let arr = [1,2,3,4,5];
for(let i = 0;i<arr.length;i++){
console.log(arr[i])
}
for in 语句
for(i in arr){
console.log(arr[i])
}

遍历对象:

let student = {
name :"小明",
age:18
}
只能使用for in语句来遍历对象
for (i in student){
i(拿到属性)
student.i/student[i](拿到值,建议使用后者)
}

js对于HTMl标签的操作:

DOM(Document Object Model)编程:

  • 整个body对象document
  • 所有的HTMl元素都是元素节点
  • 所有的HTML属性都是属性节点
  • 元素的文本都是文本节点
  • 注释节点

获取元素节点:

  // 根据id(获取唯一一个元素节点)
    let div = document.getElementById(id名)
    // 根据标签名(获得多个,想要拿一个需要用下标)
    let div1 = document.getElementsByTagName("标签名")
    // 根据class样式(获得多个,想要拿一个需要用下标)
    let div2 = document.getElementsByClassName("样式名")

新方式:

 // 找到个传入和传入的选则器匹配的第一个元素,返回值是一个元素节点
    document.querySelector("(选择器)");
//找到和选择器匹配的所有元素
let divs =  document.querySelector"选择器");
 document.write(divs[0])

新建一个元素节点:

let xxx = document.createElement("xxx");

删除一个节点

remove()

posted on   figh466  阅读(139)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示