7.22

一、函数

1.函数的概念

函数:就是封装了一段可被重复调用执行的代码。通过此代码可以实现大量代码的重复使用。

2.函数的使用

2.1声明函数

 

2.2调用函数 

 

注意:函数本身不会自己执行代码,只有调用代码才可以执行代码

2.3函数封装

 

3.函数的参数

3.1形参和实参

 3.2形参和实参的匹配问题

 注意:

4.函数返回值

return语句可以实现将函数的值返回给调用者。

return返回值:return只能返回一个值,如果逗号隔开多个值,以最后一个值为准。

我们的函数如果有return,则返回的是return后面的值,如果函数美哦与return,则返回undefined。

break,continue和return的区别:

5.arguments的使用

 5.1 概念:当我们不确定有多少个参数传递时,可以用arguments来获取。在JavaScript中,arguments实际上它是当前函数的一个内置参数,所有函数都被内置了一个arguments对象,arguments对象中存储了传递的所有实参。

 5.2 伪数组,并不是真正意义的数组

     1.具有数组的length属性

    2.按照索引的方式进行存储

    3.它没有真正数组的一些方法pop(),push()等。

例:

二、作用域

1.作用域概述:通常来说,一段程序代码中所用到的名字并不总是有效和可用的,而限定这个名字的可可用性的代码范围就是这个名字的作用域。作用域的使用提高了程序逻辑的局部性,增强了程序的可靠性,减少了名字冲突。

2.全局变量和局部变量

 全局变量:在全局作用域下的变量

局部变量:在局部作用域下(函数内部)的变量

 注意:在函数内部没有声明直接使用的变量也是全局变量。

            函数的形参也可以看作是局部变量。

从执行效率来看:

        全局变量只有在浏览器关闭时才会销毁,比较占内存资源;

        局部变量程序运行完毕就会销毁,比较节约内存资源。

3.作用域链

内部函数访问外部函数的变量,采取链式的方法决定取哪个值,这种结构我们称作为作用域链,即就近原则。

三、JavaScript预解析

1.预解析

1.1 js引擎运行js分为两步:预解析    代码执行

(1)预解析:js引擎会把js里面的所有var 还有function提升到当前作用域的最前面

(2)代码执行:按照代码书写顺序从上往下执行

1.2预解析分为变量预解析(变量提升)和函数预解析(函数提升)

(1)变量提升:就是把所有的变量声明提升到当前作用域最前面,不提升赋值操作

(2)函数提升:把所有的函数声明提升到当前作用域的最前面,不调用函数

四、JavaScript对象

1.对象

1.1什么是对象

在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。

对象是由属性和方法组成的。

属性:事物的特征; 方法:事物的行为。

1.2为什么需要对象

保存一个值时,可以使用变量,保存多个值(一组值)时,可以使用数组,保存一个人的完整信息可以用对象。

 2.创建对象的三种方式

2.1利用对象字面量创建对象

对象字面量:就是{ }里面包含了白哦大这个具体事物(对象)的属性和方法。

{ }里面采取键值对的形式表示。

键:相当于属性名

值:相当于属性值,可以是任意类型

对象调用:

变量、属性、函数、方法总结

2.2利用new Object创建对象

 

2.3利用构造函数来创建对象

 

 注意:

 3.new关键字

new在执行时会做的四件事:

(1)在内存中创建一个新的空对象。

(2)让this只想这个新的对象。

(3)执行构造函数里面的代码,给这个新对象添加属性和方法。

(4)返回这个新对象(所以构造函数里面不需要return)。

4.遍历对象属性

for ...in语句用于对数组或者对象的属性进行循环操作。

语法结构:

 

 语法中的变量是自定义的,它需要符合命名规范,通常我们会将这个变量写为k或者key.

 5.小结

 五、内置对象

1.内置对象

JavaScript中队象分为三类:自定义对象、内置对象、浏览器对象

内置对象就是指JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用或是最基本而必要的功能(属性和方法)。

JavaScript提供了多个内置对象:Math、Date、Array、Srting等。

2. Math对象

猜数字游戏

3.Date

计时器

 4.创建数组的两种方式

(1)利用数组字面量

       var arr=[1,2,3];

       console.log(arr[0]);

(2)利用new Array()

        var arr1=new Array(2,3);

        console.log(arr1);

 5.数组对象

5.1检测是否为数组

(1)instanceof  运算符 可以用于检测是否为数组

(2)Array.isArray()

5.2 添加删除数组元素的方法

 

 

 

### JxBrowser 7.22 版本相关信息 JxBrowser 是一个用于在 Java 应用程序中嵌入基于 Chromium 浏览器引擎的库。关于 JxBrowser 7.22 版本的信息,通常可以在其官方文档或发布说明中找到。以下是与 JxBrowser 7.22 相关的关键信息: 1. **功能改进**:JxBrowser 7.22 引入了对某些特定平台的支持增强,并优化了内存管理[^1]。此外,还改进了 JavaScript 执行的效率和稳定性。 2. **兼容性**:此版本确保了与最新 Java 版本的兼容性,并修复了一些与跨平台相关的 bug[^1]。 3. **下载地址**:JxBrowser 的下载链接通常位于其官方网站的 [Download](https://www.teamdev.com/jxbrowser/download) 页面。用户需要注册账户并登录后才能访问具体版本的下载链接。 4. **发布说明**:详细的发布说明(Release Notes)可以在 JxBrowser 官方文档页面找到。这些说明通常包括新增功能、修复的 bug 列表以及已知问题。 以下是一个简单的代码示例,展示如何使用 JxBrowser 加载网页并执行 JavaScript: ```java import com.teamdev.jxbrowser.browser.Browser; import com.teamdev.jxbrowser.engine.Engine; import com.teamdev.jxbrowser.engine.EngineOptions; public class JxBrowserExample { public static void main(String[] args) { Engine engine = Engine.newInstance(EngineOptions.newBuilder().build()); Browser browser = engine.newBrowser(); browser.navigation().loadUrl("https://example.com"); // 使用 JavaScript 执行器填充输入框 String script = "document.querySelector('input[name=\"username\"]').value = 'testuser';"; browser.js().evaluate(script, result -> { if (result.isSuccess()) { System.out.println("JavaScript executed successfully."); } else { System.err.println("Error executing JavaScript: " + result.getException().getMessage()); } }); } } ```
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值