JS#2 对象

news2024/11/16 9:29:34

一. Array对象

  1. 定义

var 变量名 = new Array(元素列表);

var 变量名 = [元素列表];

  1. 访问

arr[索引] = 值;

  1. 注意

JS数组类似于Java的集合, 长度, 类型都可变

  1. 常用的属性和方法

  • 属性: length 数组元素的个数

  • 方法: push( ) 添加元素

splice( ) 删除元素

  1. 代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Array</title>
</head>
<body>




<script src="../js/demo2.js">

</script>
</body>
</html>
/*  //第一种方式
  var arr1 = new Array(1,2,3);
  alert(arr1);

 //第二种方式
  var arr2 = [2,3,4];
  alert(arr2);*/

  //属性:length: 数组中元素的个数
 /*for(let i = 0;i<arr2.length; i++){
    alert(arr2[i]);
 }*/
 //push:添加方法
 var arr3 = [9,8,7];
 arr3.push(6);
 //alert(arr3);

 //splice:删除元素
 arr3.splice(3,1);//第一个参数:索引 第二个参数:删除的个数
 alert(arr3);

二. String对象

  1. 定义

  • var 变量名 = new String(s);

  • var 变量名 = s;

  1. 常用的属性和方法

  • 属性: length 字符串的长度

  • 方法: charAt( ) 返回指定位置的字符

indexOf( ) 检索字符串

trim( ) 去除字符串前后两端的空白字符

  1. 代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>String 对象</title>
</head>
<body>



<script>
    //var s1 = new String("js1");//方式一

    //var s2 = "js2";//方式二

    //alert(s1.length);
    //alert(s2);//弹出js2

    //var a1 = s1.charAt(1);
    //alert(a1);//弹出s

    var str1 = "   aaa  ";
    alert(1+str1.trim()+1);
</script>
</body>
</html>
  1. 效果展示

三. 自定义对象

  1. 格式

var 对象名称 = {

属性名称1: 属性值1,

属性名称2: 属性值2,

......

属性名称: function(形参列表){ }

...

};

四. BOM

  1. 介绍

  1. Browser Object Model (BOM) 浏览器对象模型

  1. JavaScript将浏览器的各个组成部分封装为对象

  1. 组成:

  • Window:浏览器窗口对象

  • Navigator:浏览器对象

  • Screen: 屏幕对象

  • History:历史记录对象

  • Location:地址栏对象

  1. Window的属性和方法

  1. Window:浏览器窗口对象

获取:直接使用 window,其中window.可以省略

window.alert("abc");

  1. 属性:获取其他BOM对象

history 对 History 对象的只读引用

Navigator 对 Navigator 对象的只读引用

Screen 对 Screen 对象的只读引用

location 用于窗口或框架的 Location 对象

  1. 方法

alert() 显示带有一段消息和一个确认按钮的警告框

confirm() 显示带有一段消息以及确认按钮和取消按钮的对话框

setInterval() 按照指定的周期 (以毫秒计) 来调用函数或计算表达式

setTimeout() 在指定的毫秒数后调用函数或计算表达式

  1. 代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Window对象</title>
</head>
<body>


<script>
  //var flag = confirm("window");
  //alert(flag);//确定为true, 取消为false

  //setTimeout(function,毫秒值); 在一定的时间间隔后执行一个function,只执行一次
  //setInterval(function,毫秒值); 在一定的时间间隔后执行一个function,循环执行
  //setTimeout(function(){alert("666")},2000);
    setInterval(function(){alert("666")},2000);


</script>
</body>
</html>
  1. History和Location

  1. History:历史记录

Location: 地址栏对象

使用window.history获取,其中window.可以省略

使用window.location获取,其中window.可以省略

  1. history方法

back( ) 加载history列表的前一个URL

forward( ) 加载history列表的下一个URL

  1. lactation属性

href 设置或返回完整的URL

五. DOM

  1. HTML DOM: 针对HTML文档的标准模型

  • Image: <img>

  • Button: <input type="button">

  1. Element: 元素对象

获取:使用Document对象的方法来获取

  • getElementById: 根据id属性值获取,返回一个Element对象

  • getElementsByTagName: 根据标签名称获取,返回Element对象数组

  • getElementsByName: 根据name属性值获取,返回Element对象数组

  • getElementsByClassName: 根据class属性值获取,返回Element对象数组

  1. 代码

//getElementById: 根据id属性值获取,返回一个Element对象
  var va1 = document.getElementById("male");
  alert(va1);
//getElementsByTagName:  根据标签名称获取,返回Element对象数组
  var divs = document.getElementsByTagName("div");
    alert(divs.length);
  for(var i = 0; i < divs.length; i++){
        alert(divs[i]);
  }
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Element test</title>
</head>
<body>
  <div class="cla">div1</div><br>
  <div class="cla">div2</div><br>

  性别:
  <input type="radio" name="gender" value="1" id="male">
  <label for="male">男</label>
  <input type="radio" name="gender" value="2" id="female">
  <label for="female">女</label><br>

  爱好:
  <input type="checkbox" name="hobby" value="1">跑步
  <input type="checkbox" name="hobby" value="2">打乒乓球
  <input type="checkbox" name="hobby" value="3">打篮球
  <br>


<script src="../JS/demo1.js">
  //getElementById: 根据id属性值获取,返回一个Element对象
  //var va1 = document.getElementById("male");
  //alert(va1);

  //var divs = document.getElementsByClassName("cla");
  //alert(divs.length);
  //for (let i = 0; i < divs.length; i++){
  //    alert(divs[i]);
  //}

</script>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/381400.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day55-day56【代码随想录】二刷数组

文章目录前言一、字符串的排列&#xff08;力扣567&#xff09;【滑动窗口】二、找到字符串中所有字母异位词&#xff08;力扣438&#xff09;【滑动窗口】三、串联所有单词的子串&#xff08;力扣30&#xff09;【滑动窗口】****【hard】每日一题day55&#xff1a;合并相似的物…

面试题HTML篇(一)

目录 一、meta 标签可以做什么 四、行内元素、块级元素、空元素 元素之间的转换问题&#xff1a; 五、px,em,rem,vw,vh,rpx等单位的特性 六、替换元素和非替换元素 七、first-of-type和first-child有什么区别 八、doctype标签的作用 九、link标签和import标签的区别 十…

import “cv2“ could not be resolved pylance(reportMissingImports)

openCV系列文章目录 文章目录openCV系列文章目录前言一、错误原因二、解决方法1.在vscode&#xff1a;Python:Select Interpreter2.依然报错&#xff1a;cv2.error: OpenCV(4.7.0) D:\a\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:1272: error: (-2:U…

InstructGPT论文精读

论文链接&#xff1a;https://arxiv.org/pdf/2203.02155.pdf 1 摘要 做的事&#xff1a; 1、标注了数据&#xff0c;问题和答案写出来&#xff0c;然后训练模型 2、收集数据集&#xff0c;排序模型的输出&#xff0c;使用强化学习训练这个排序的过程 效果层面来说&#xff1…

vant-list使用,请求接口之后会多几次load加页面(详细解释,动图演示)

页面实现效果&#xff1a;在页面中使用了van-tabs组件和van-list组件来实现页面布局和功能。问题描述&#xff1a;在第一个标签下&#xff0c;向下滚动page超过了2页之后&#xff0c;有点击tab切换标签&#xff0c;接口调用了多回。解决问题关键&#xff1a;loading和finished在…

爆文制造机!小红书热榜3个方向,告诉你选题诀窍!

我们知道&#xff0c;不论是达人创作内容&#xff0c;还是品牌制定Brief&#xff0c;都需要提前调研筛选海量信息&#xff0c;这时候如果有一个自己的内容素材库&#xff0c;就省事多啦。按照内容需求&#xff0c;我们可以按3个角度划分小红书内容素材&#xff1a;笔记类型、竞…

MyBatis的简单使用

MyBatis是一个优秀的持久型框架用于简化JDBC开发&#xff0c;JDBC的原生写法普遍都很麻烦&#xff0c;还要写原汁原味的sql语句&#xff0c;mybatis将很多东西都放到了配置文件里面然后用少量代码简化了免除了几乎所有的JDBC代码以及设定参数和获取结果集的工作。MyBatis 可以通…

使用D3绘制力导向图遇到的坑

目录1. 不同D3版本差异2. D3 V4版本绘制力导向图基本流程3. 跨域问题现象原因解决办法4. 异步赋值现象原因解决办法1. 不同D3版本差异 V3&#xff1a;通过d3.layout.force()将节点、连接线的数据转换成d3力导向图能够使用的数据结构 var force d3.layout.force().nodes(node…

哪些工具可以实现在线ps的需求

在线Photoshop有哪些工具可以选择&#xff1f;在 Adobe 的官网上就能够实现&#xff0c;很惊讶吧&#xff0c;其实 Adobe 官方推出了在线版本的 Photoshop 的&#xff0c;尽管目前还是 Beta版本&#xff0c;但其实也开放了蛮久了。编辑切换为居中添加图片注释&#xff0c;不超过…

安卓手机用WIFI无线调试adb

1、准备连接 1、首先将电脑和手机连接同一个WIFI&#xff0c;并插上数据线 2、打开电脑CMD,输入命令adb start-server开启adb服务 3、输入adb devices 查询已连接的设备 List of devices attached 505e894 device 这样代表已连接成功&#xff0c; 505e894 。 505e894是udid&…

蓝桥杯真题(JAVA)--分巧克力

题目描述儿童节那天有 K 位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。小明一共有 NN 块巧克力&#xff0c;其中第 i块是HiWi 的方格组成的长方形。为了公平起见&#xff0c;小明需要从这 NN 块巧克力中切出 K 块巧克力分给小朋友们。切出的巧克力需要满足&…

SiC MOSFET驱动电压的分析

SiC MOSFET驱动电压的分析 tips:资料来自富昌电子&#xff0c;及各个模块数据手册。 1.常见的Vgs与Vgs(th)&#xff0c;以及对SiC MOSFET应用的影响 驱动电压Vgs和栅极电压阈值Vgs(th)关系到SiC MOSFET在应用过程中的可靠性&#xff0c;功率损耗(导通电阻)&#xff0c;以及驱…

极光笔记 | 极光PUSH服务助力企业提升抢单速度

随着硬件、软件、网络等不断发展、完善&#xff0c;互联网已经渗透到了日常生活中的方方面面&#xff0c;在直接赋能原有行业服务的同时也带来了很多新的服务模式&#xff0c;给人们日常生活带来了极大便利。例如&#xff1a;外卖、快递、跑腿等相关业务更是在我们日常生活中随…

CHAPTER 2 Web HA集群部署 - Heartbeat

Web HA集群部署 - Heartbeat1. Heartbeat 概述1.1 Heartbeat主要组成部分2. 环境依赖2.1 环境及组件软件2.2 关闭firewalld & selinux2.3 配置双机互信&#xff0c;SSH密钥登录​​2.4 同步时间&#xff08;以主节点时间为准&#xff09;2.5 配置域名解析3 安装软件3.1 安装…

你有“ChatGPT综合征”吗:想搞钱,或是失业焦虑?

最近互联网圈里有一个“顶流”&#xff0c;ChatGPT上线仅5天&#xff0c;注册用户数就突破100万&#xff0c;今年2月的月活跃用户已经突破了1亿。ChatGPT的热度有增无减&#xff0c;过不了多久&#xff0c;ChatGPT这个词就会从一线城市的写字楼席卷到农村老家的饭桌上。 互联网…

自动化测试难点案例分析,其实自动化你用错方向还不如不用

随着国内企业软件开发及测试水平的提升&#xff0c;许多企业开始尝试开展自动化测试的应用&#xff0c;以提高测试效率和测试质量。虽然在国外自动化测试工具应用已经很普遍&#xff0c;但国内许多企业对于软件自动化测试的理解还停留在表面上&#xff0c;没有深入的理解到企业…

SpringMVC的常用组件和工作流程及部分注解解析

一丶SpringMVC常用的组件 1.前端控制器DispatcherServlet 作用&#xff1a;统一处理请求和响应。除此之外还是整个流程控制的中心&#xff0c;由 DispatcherServlet 来调用其他组件&#xff0c;处理用户的请求 接收请求&#xff0c;响应结果&#xff0c;相当于转发器&#xff…

参考 Promise/A+ 规范和测试用例手写 Promise

前言 这可能是手写promise较清晰的文章之一。 由浅至深逐步分析了原生测试用例&#xff0c;以及相关Promise/A规范。阅读上推荐以疑问章节为切入重点&#xff0c;对比Promise/A规范与ECMAScript规范的内在区别与联系&#xff0c;确定怎样构建异步任务和创建promise实例。然后开…

JavaSE18-面向对象-内部类

文章目录一、局部内部类二、成员内部类三、静态内部类四、匿名内部类一、局部内部类 把类定义在方法中。对象创建格式&#xff1a;直接在定义内部类的方法中创建。如果在该方法外就不能使用该局部内部类了。应用场景&#xff1a;如果需要定义一个在方法中临时使用的类可以使用…

SpringCloud(微服务)学习篇(一)

SpringCloud(微服务)学习篇(一) 1 nacos的下载和配置 1.1 进入官网 nacos官网 1.2 点击nacos➡点击最新稳定版本 1.3 往下翻并点击nacos-server-2.2.0.zip,此时就已经开始下载了 1.4 把下载好的压缩包解压到没有中文路径的目录里面 1.5 修改application.properties文件 1.…