JavaScript的基础知识

news2024/11/17 15:45:13

目录

一、初识JavaScript

二、JavaScript的基础

1、初步了解

 2、代码位置

 3、注释

4、变量

①字符串

②数组

③对象

④条件语句

⑤函数 

三、DOM模块


一、初识JavaScript

  • JavaScript,是一门编程语言。浏览器就是JavaScript语言的解释器。
  • DOM和BOM 相当于编程语言内置的模块。
  • JQuery 相当于是编程语言的第三方模块。
  • JavaScript让程序实现一些动态效果。

二、JavaScript的基础

1、初步了解

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .menus{
            width: 200px;
            border: 1px solid red;
        }
        .menus .header{
            background-color: gold;
            padding: 20px 10px;
        }
    </style>
</head>
<body>
<div class="menus">
    <div class="header" onclick="myFunc()">大标题</div>
    <div class="item">内容</div>
    <script type="text/javascript">
        function myFunc(){
            alert("你好呀")
            confirm("是否要继续?")
        }
    </script>
</div>
</body>
</html>

前端三大组件:

  • HTML,裸体
  • CSS,好看的衣服
  • JavaScript,动态

 2、代码位置

js代码的存在形式:

  • 当前的HTML文件中

head中:CSS代码的下面

body中:(推荐)

注意: 如果写在了head中,bodyhtml代码不会执行,会先执行head中的javascript之后,才会显示html代码

  •  在其他js文件中,导入使用

<body>
	<script src="static/js/my.js"></script>
</body>

 3、注释

  • HTML的注释
<!-- 注释内容 -->
  • CSS的注释,style代码块
/* 注释内容 */
  • JavaScript的注释,script代码块
// 注释内容

/* 注释内容 */

4、变量

python,编程语言

name = "派大星"
print(name)

JavaScript,编程语言

定义变量

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script type="text/javascript">
  var name = "派大星";
  console.log(name);
</script>
</body>
</html>

①字符串

//声明
var name = "派大星";
var name = String("派大星");

 常见功能

var name = "中国联通"
var v1 = name.length;           //获取字符长度
var v2 = name[0];               //获取数据
var v3 = name.trim();			//去除空白
var v4 = name.substring(0,2)	//切片, 前取后不取

 案例:跑马灯

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>

    <div id="txt">欢迎中国联通领导莅临指导</div>

    <script type="text/javascript">

        function show() {
            //1.去HTML中找到某个标签并获取他的内容 (DOM)
            var tag = document.getElementById("txt");
            var dataString = tag.innerText;

            //2.动态起来,把文本中的第一个字符放在字符串的最后面
            var firstChar = dataString[0];
            var otherString = dataString.substring(1, dataString.length);
            var newText = otherString + firstChar;

            //3.在HTML标签中更新内容
            tag.innerText = newText;
        }

        //Javascript中的定时器
        //每秒钟执行这个show函数
        setInterval(show, 1000);    //毫秒
    </script>
</body>
</html>

②数组

//定义
var v1 = [11,22,33,44];
var v2 = Array([11,22,33,44]);

//操作
var v1 = [11,22,33,44];

v1[1]
v1[0] = "派大星"

//追加
v1.push("联通");			//尾部追加 [11,22,33,44,"联通"]
v1.unshift("联通");		//头部追加 ["联通",11,22,33,44]
v1.splice(索引,0,元素);
v1.splice(1,0,"中国");	//指定位置追加 [11,"中国",22,33,44]

//删除
v1.pop();				//尾部删除
v1.shift();				//头部删除
v1.splice(索引位置,1);
v1.splice(2,1);			//索引为 2 的元素删除 [11,22,44]



//循环
var v1 = [11,22,33,44];
//循环的是索引
for(var index in v1){
	//data=v1[index]
	...
}


for(var i=0; i<v1.length; i++){
	...
}

案例:动态数据

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
 <ul id="city">
        <!-- <li>北京</li>
        <li>天津</li>
        <li>西安</li> -->
    </ul>

    <script type="text/javascript">
        var cityList = ["北京","上海","深圳"];
        for(var idx in cityList) {
            var text = cityList[idx];

            //创建 <li></li> 标签
            var tag = document.createElement("li");
            //在 li 标签中写入内容
            tag.innerText = text;

            //添加到 id=city 那个标签的里面 DOM
            var parentTag = document.getElementById("city");
            parentTag.appendChild(tag);
        }
    </script>
</body>
</html>

③对象

info = {
	"name":"派大星",
	"age":18,
}

info = {
	name:"派大星",
	age:18
}

info.age;
info.name = "海绵宝宝"

info["age"]
info["name"] = "海绵宝宝";

delete info["age"]

//循环
for(var key in info){
	//key值 data=info[key]
	...
}

案例:动态表格

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>
    <table border="1">
        <thead>
            <tr>
                <th>ID</th>
                <th>姓名</th>
                <th>年龄</th>
            </tr>
        </thead>
        <tbody id="body">
            <tr>
                <!-- <td>1</td>
                <td>poker</td>
                <td>25</td> -->
            </tr>
        </tbody>
    </table>

    <script type="text/javascript">

        var dataList = [
            { id: 1, name: "派大星", age: 23 },
            { id: 1, name: "派大星", age: 23 },
            { id: 1, name: "派大星", age: 23 },
            { id: 1, name: "派大星", age: 23 },
            { id: 1, name: "派大星", age: 23 },
            { id: 1, name: "派大星", age: 23 },
        ];

        for (var idx in dataList) {
            var info = dataList[idx]
            //1.创建 tr 标签
            var tr = document.createElement("tr")
            for (var key in info) {
                var text = info[key];
                //2.创建 td 标签
                var td = document.createElement("td");
                td.innerText = text;
                tr.appendChild(td);
            }
            //3. 追加数据
            var bodyTag = document.getElementById("body");
            bodyTag.appendChild(tr);
        }
    </script>
</body>
</html>

④条件语句

if (条件) {
	...
}else{
	...
}

if (条件) {
	...
else if (条件){
	...
}else{
	...
}

⑤函数 

function func(){
	...
}

//执行
func()

三、DOM模块

DOM 是一个模块,模块可以对HTML页面中的标签进行操作

//根据 ID 获取标签
var tag = doucment.getElementById("xx");

//获取标签中的文本
tag.innerText

//修改标签中的文本
tag.innerText = "111111fff";

案例:

<body>
    
    <ul id="city">
        <!-- <li>北京</li>
        <li>天津</li>
        <li>上海</li> -->
    </ul>

    <script type="text/javascript">
        var cityList = ["北京","天津","上海"];
        for(var idx in cityList) {
            var text = cityList[idx];

            //创建 <li></li> 标签
            var tag = document.createElement("li");
            //在 li 标签中写入内容
            tag.innerText = text;

            //添加到 id=city 那个标签的里面 DOM
            var parentTag = document.getElementById("city");
            parentTag.appendChild(tag);
        }
    </script>
</body>

事件的绑定 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>

    <input type="text" placeholder="请输入内容" id="content">
    <input type="button" value="点击添加" onclick="addCityInfo()">

    <ul id="city">
    </ul>

    <script type="text/javascript">
        function addCityInfo() {
            //1.找到标签
            var userContent = document.getElementById("content");
            //2.获取input中用户输入的内容
            var newString = userContent.value;
            //判断用户输入是否为空
            if (newString.length > 0) {
                //3.创建 li 标签,传入用户输入的内容
                var newTag = document.createElement("li");
                newTag.innerText = newString;
                //4.标签添加到 ul 中
                var parentTag = document.getElementById("city");
                parentTag.appendChild(newTag);
                //5.将 input text 内容清空
                userContent.value = "";
            }else{
                alert("输入不能为空!")
            }
        }
    </script>
</body>
</html>

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

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

相关文章

Unity功能——宏定义的使用

声明&#xff1a;本文为个人笔记&#xff0c;用于学习研究使用非商用&#xff0c;内容为个人研究及综合整理所得&#xff0c;若有违规&#xff0c;请联系&#xff0c;违规必改。 Unity功能——宏定义的使用 文章目录Unity功能——宏定义的使用一.开发环境二.问题描述三.宏的使用…

拿下大厂Offer的关键——飞滴出行网约车项目全新完结

哈喽各位小伙伴&#xff0c;好久不见吖&#xff01;正月初八&#xff0c;你开工了吗&#xff1f;告别新春的氛围&#xff0c;又开始新一年的奋斗。尤其是年前的离职的小伙伴&#xff0c;马上又是金三银四&#xff0c;你的面试还要准备多久&#xff1f;今天给大家分享一份阿里大…

Leetcode力扣秋招刷题路-0098

从0开始的秋招刷题路&#xff0c;记录下所刷每道题的题解&#xff0c;帮助自己回顾总结 98. 验证二叉搜索树 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。 节点…

[cpp进阶]C++类型转换

文章目录C语言的类型转换为什么C需要四种类型转换C强制类型转换static_castreinterpret_castconst_castdynamic_castexplicitRTTIC语言的类型转换 在C语言中&#xff0c;如果赋值运算符左右两侧类型不同&#xff0c;或者形参与实参类型不匹配&#xff0c;或者返回值类型与接收…

使用lnmp与wordpress做1个外贸询盘网站

目录 lnmp安装 包安装 mysql元数据库 网路策略确认 iptables确认 mysql允许远程访问 wordpress下载安装 包安装 nginx配置 wordpress配置 初始化 astra&#xff0c;elementor和woocommerce插件 插件安装 模板选择 自定义网页 国内不兴建站&#xff0c;通常只有码…

openstack: nova : reset-state

https://github.com/openstack/python-novaclient 牵扯的两个project是&#xff1a;nova和python-novaclient&#xff1b; 这个命令从代码分析和实际使用上来看只是将nova数据库里的实例的状态更改&#xff1b;没有对实例做实质的操作。 https://docs.openstack.org/nova/pik…

01 C语言实现动态气泡碰撞和移动的效果,小球碰撞,Win7气泡壁纸,碰撞算法

C语言实现动态气泡碰撞和移动的效果 作者将狼才鲸创建日期2023-01-29 Git源码仓库地址&#xff1a;C语言实现动态气泡碰撞和移动的效果CSDN文章地址&#xff1a;01 C语言实现动态气泡碰撞和移动的效果 一、前言 想要实现多气泡相互碰撞的效果&#xff1b; 想着这种在Win7壁纸…

【Cloudera Manager】cdh集群ntp时钟同步问题

CM启动后集群界面出现时钟未同步问题在集群主机通过ntpstat命令查看&#xff0c;出现unsynchronised标识通过timedatectl命令&#xff0c;显示NTP synchronized: no以上说明确实没有同步时钟问题排查与解决首先查看ntp配置文件&#xff0c;cat /etc/ntp.confserver 172.X.X.X配…

万年历农历法定节假日数据查询工具

1.数据来源于百度搜索置顶日历&#xff1a; 2.代码&#xff1a; http调用及数据处理均采用了hutool, 也可以用别的工具。 hutool 依赖如下&#xff1a; <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><versio…

DNS 域名解析服务器详解以及相关实验

目录 一&#xff0c; 域名解析服务器的介绍 1&#xff0c; 因特网的域名结构 2&#xff0c; 域名服务器的类型划分 二&#xff0c;DNS 域名解析的过程 三&#xff0c;DNS 解析方式 四&#xff0c;搭建 DNS 服务器 1&#xff0c;使用命令yum install bind -y安装dns软件 2&#…

对于初学python的小白大佬们有什么建议吗?

我认为态度是一块重要的敲门砖。米卢说&#xff1a;“态度决定一切”。你对人生的态度是这个世界真正的试金石。对不同的事情要有不同的态度。而对待自学&#xff0c;认真就妥了。 首先要为自己设定一个目标&#xff0c;对于初学者&#xff0c;看书的话可以看《Head First Pyt…

几款考研必备软件 你还不知道吗?

几款考研必备软件 你还不知道吗? 英语单词软件推荐 背单词软件 墨墨背单词[推荐指数]⭐️⭐️⭐️⭐️⭐️ 科学高效抗遗忘方法,记录详细记忆行为数据,结合记忆反馈帮你记忆更加牢固 界面简洁舒适无广告,没有任何干扰,就算是强迫症也能使用的非常舒适 完美收集权威单词本,全…

哈佛大学庄小威团队破解衰老大脑的关键变化

“了解衰老是生物医学最重要的目标之一&#xff0c;同时这也是一个非常具有挑战性的问题。”哈佛大学终身教授庄小威说&#xff0c;“造成挑战的原因之一在于大脑非常复杂&#xff0c;细胞种类繁多&#xff0c;许多不同类型的神经元和非神经元细胞形成了复杂的相互作用网络。”…

一种二阶Biquad滤波器

一、首先给出biquad的Z变换函数为&#xff1a; 为了计算方便可对上式进行归一化处理&#xff0c;分子分母同时除以a0&#xff0c;则得出如下&#xff1a; 对应的差分方程为&#xff1a; 二、用户定义参数如下 #ifndef LN2 #define LN2 0.69314718055994530942 #endif #ifnde…

密码学技术导论篇

密码学技术前言基础术语不要使用保密的密码算法任何密码总有一天都会被破解对称密码&#xff08;共享秘钥密码&#xff09;AES总结公钥密码 --- 用公钥加密&#xff0c;私钥解密秘钥配送问题公钥密码中间人攻击认证单向散列函数--- 消息的指纹单向散列函数的实际应用单向散列函…

python接口自动化——unittest简介(详解)

简介 前边的随笔主要介绍的requests模块的有关知识个内容&#xff0c;接下来看一下python的单元测试框架unittest。熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 TestNG&#xff0c;这个招聘的需求上也是经常见到的。python 里面也有单元 测试框架-unitt…

Lua 垃圾回收

Lua 垃圾回收 参考至菜鸟教程。 Lua 采用了自动内存管理。 这意味着你不用操心新创建的对象需要的内存如何分配出来&#xff0c; 也不用考虑在对象不再被使用后怎样释放它们所占用的内存。 Lua运行了一个垃圾收集器来收集所有死对象&#xff08;即在Lua中不可能再访问到的对象&…

新能源——充电控制

一、交流充电——慢充 交流充电&#xff1a;电网输入给车辆的交流电&#xff0c;220V AC单向电或380V AC三相电。 车载充电机&#xff1a;交流电转化为直流电 二、直流充电——快充 三、充电模式 模式1——标准插座 模式2——带有交流电动汽车供电设备的标准插座 模式3——…

idea maven打包编译报错 java.lang.AssertionError: input.getType

今天使用idea打包编译maven项目&#xff0c;出现如下报错 构建报错时&#xff0c;最先显示的是这个报错。查了一圈下来&#xff0c;我的配置是没有问题的。 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project…

WackoPicko通关教程

7.WackoPicko通关教程 首先进入网站&#xff0c;整体浏览网页&#xff0c;看网站的功能点 本着见框就插的原则&#xff0c;我们可以在搜索框进行查询 构造payload&#xff1a; <script>alert(/xss/)</script> 查看网站&#xff0c;成功触发弹窗 之后进入留言板…