javascript基础知识总结(javascript知识点梳理)

概述

在 HTML 中,JavaScript 代码必须位于 <script> 与 </script> 标签之间。

<script>
document.getElementById(“demo”).innerHTML = “我的第一段 JavaScript”;
</script>

您能够在 HTML 文档中放置任意数量的脚本。

脚本可被放置与 HTML 页面的 <body> 或 <head> 部分中

也可以放置与外部文件中,文件文件扩展名是.js

外部脚本, <script> 标签的 src 属性中设置脚本的地址

在外部文件中放置脚本有如下优势:

  • 分离了 HTML 和 js 代码
  • 使 HTML 和 JavaScript 更易于阅读和维护
  • 已缓存的 JavaScript 文件可加速页面加载

输出

JavaScript 能够以不同方式“显示”数据:

  • 使用 window.alert() 写入警告框
  • 使用 document.write() 写入 HTML 输出
  • 使用 innerHTML 写入 HTML 元素
  • 使用 console.log() 写入浏览器控制台

<script>
document.getElementById(“demo”).innerHTML = 5 + 6;
document.write(5 + 6);
window.alert(5 + 6);
alert(5 + 6);
console.log(5 + 6);
</script>

基础语法

JavaScript 语法是一套规则,它定义了 JavaScript 的语言结构

在编程语言中,变量用于存储数据值

JavaScript 使用 var 关键词来声明变量

= 号用于为变量赋值

var name = “Tina”;
var age = 18;

JavaScript 使用算数运算符(+ – * /)来计算值:

// 数值计算
var num = 18 + 1

//字符串相加
var str = name + ‘:’ + age

JavaScript 关键词用于标识被执行的动作。

var 关键词告知浏览器创建新的变量:

var x = 7 + 8;
var y = x * 10;

并非所有 JavaScript 语句都被“执行”。

双斜杠 // 或 /* 与 */ 之间的代码被视为注释

注释会被忽略,不会被执行:

var x = 7; // 会执行
// var x = 8; 不会执行


数据类型

值类型(基本类型)

  • 字符串(String)
  • 数字(Number)
  • 布尔(Boolean)
  • 空(Null)
  • 未定义(Undefined)

引用数据类型

  • 对象(Object)
  • 数组(Array)
  • 函数(Function)

var length = 7; // 数字
var lastName = “Gates”; // 字符串
var isShow = true; // 布尔
var title = null; // 空
var title; // undefined
var list = [“Ace”, “Tina”, “Eleven”]; // 数组
var x = {firstName:”Bill”, lastName:”Gates”}; // 对象
var fun = function(){alert(‘我是一个函数’)} // 对象

1.字符串

字符串(或文本字符串)是一串字符(比如 “Bill Gates”)。

字符串被引号包围。您可使用单引号或双引号:

var name = “Tina”; // 使用双引号
var name = ‘Tina’; // 使用单引号
var name = “我的名字叫’Tina'”; // 字符串内包含引号

1.1 特殊字符

\ 转义字符

反斜杠转义字符把特殊字符转换为字符串字符:

JavaScript基础第一节

通常,JavaScript 字符串是原始值,通过字面方式创建:

var firstName = “Bill”

但是字符串也可通过关键词 new 定义为对象:

var firstName = new String(“Bill”)

当使用 == 相等运算符时,相等字符串是相等的:

var x = “Bill”;
var y = new String(“Bill”);

// (x == y) 为 true,因为 x 和 y 的值相等

当使用 === 运算符时,相等字符串是不相等的,因为 === 运算符需要类型和值同时相等。

var x = “Bill”;
var y = new String(“Bill”);
// (x === y) 为 false,因为 x 和 y 的类型不同(字符串与对象)var x = new String(“Bill”);


var y = new String(“Bill”);
// (x == y) 为 false,因为 x 和 y 是不同的对象

1.2. 字符串长度

内建属性 length 可返回字符串的长度:

var txt = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
var sln = txt.length;

1.3. 查找字符串

indexOf() 方法返回字符串中指定文本首次出现的索引(位置)

JavaScript 从零计算位置。

0 是字符串中的第一个位置,1 是第二个,2 是第三个 …

lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引

如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1

var str = “这是String字符串的讲解”;
var pos = str.indexOf(“String”);
var pos2 = str.lastIndexOf(“String”);

两种方法都接受作为检索起始位置的第二个参数。

var str = “这是String字符串的讲解”;
var pos = str.indexOf(“String”,1);
var pos2 = str.lastIndexOf(“String”,1);

1.4 检索字符串

search() 方法搜索特定值的字符串,并返回匹配的位置:

var str = “这是String字符串的讲解”;
var pos = str.search(“String”);

indexOf() 与 search(),是相等的。

这两种方法是不相等的。区别在于:

  • search() 方法无法设置第二个开始位置参数。
  • indexOf() 方法无法设置更强大的搜索值(正则表达式)。

1.5 提取字符串

有三种提取部分字符串的方法:

  • slice(startend)

    slice() 提取字符串的某个部分并在新字符串中返回被提取的部分。

    该方法设置两个参数:起始索引(开始位置),终止索引(结束位置)。

    var str = “Apple, Banana, Mango”;
    var res = str.slice(7,13);//如果某个参数为负,则从字符串的结尾开始计数var res2 = str.slice(-13,-7);//如果省略第二个参数,则该方法将裁剪字符串的剩余部分var res3 = str.slice(7);//从结尾计数var res = str.slice(-13);

  • substring(startend)

    substring() 类似于 slice()。

    不同之处在于 substring() 无法接受负的索引。

    var str = “Apple, Banana, Mango”;
    var res = str.substring(7,13);//如果省略第二个参数,则该 substring() 将裁剪字符串的剩余部分。var res2 = str.substring(7);

  • substr(startlength)

    substr() 类似于 slice()。

    不同之处在于第二个参数规定被提取部分的长度。

    var str = “Apple, Banana, Mango”;
    var res = str.substr(7,6);//如果省略第二个参数,则该 substr() 将裁剪字符串的剩余部分。var res2 = str.substr(7);//如果首个参数为负,则从字符串的结尾计算位置var res3 = str.substr(-5);

1.6 替换字符串

replace() 方法用另一个值替换在字符串中指定的值

replace() 方法不会改变调用它的字符串。它返回的是新字符串。

var str = “这是String字符串的讲解”;
//默认replace() 只替换首个匹配:
var n = str.replace(“String字符串”, “前端”);
//如需执行大小写不敏感的替换,请使用正则表达式 /i(大小写不敏感):
var n = str.replace(/string字符串/i, “前端”);
//如需替换所有匹配,请使用正则表达式的 g 标志(用于全局搜索)
var n = str.replace(/string字符串/g, “前端”);

1.7 转换为大小写

通过 toUpperCase() 把字符串转换为大写

var text1 = “Hello World!”; // 字符串
var text2 = text1.toUpperCase(); // text2 是被转换为大写的 text1

通过 toLowerCase() 把字符串转换为小写:

var text1 = “Hello World!”; // 字符串
var text2 = text1.toLowerCase(); // text2 是被转换为小写的 text1

1.8 concat()

concat() 连接两个或多个字符串:

var text1 = “Hello”;
var text2 = “World”;
text3 = text1.concat(” “,text2);

1.9 String.trim()

trim() 方法删除字符串两端的空白符:

var str = ” Hello World! “;
alert(str.trim());

1.10 charAt()

charAt() 方法返回字符串中指定下标的字符串

var str = “HELLO WORLD”;
str.charAt(0); // 返回 H

1.11 字符串转数组

可以通过 split() 将字符串转换为数组:

var txt = “a,b,c,d,e”; // 字符串
txt.split(“,”); // 用逗号分隔
txt.split(” “); // 用空格分隔
txt.split(“|”); // 用竖线分隔
txt.split(“”);

本文链接:https://www.dzdvip.com/34243.html 版权声明:本文内容均来源于互联网。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 395045033@qq.com,一经查实,本站将立刻删除。
(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年6月29日 00:03
下一篇 2022年6月29日 22:47

相关推荐

  • 关于抖音运营的四大规则(抖音运营的四个套路)

    了解新媒体运营的朋友一定不会放过抖音的巨大流量,那为什么别人的视频有破亿的播放量而你的视频无人问津呢? 要如何利用短视频的发展潜力来创造更多价值呢?今天古今江南文化直播基地来和大家深入解析这些爆款视频的背后究竟用了哪些“套路”? 一、从变现入手 在红利期人人都想分上一杯羹,那如果你不知道如何做账号定位那就直接从变现能力入手,这也是大部分抖音运营者的最终目标,但是每个类型账号的变现能力也不相同。 美妆、服饰类账号是比较容易变现的类型,抖音账号只需要开通购物车功能就可以直接挂淘宝链接,也可以自己接厂家推广,变现能力非常强。 什么类型的账号变现能力强、你能够掌握什么类型的账号从这两点出发也能做好你账号初期的定位,可以在抖音上查看不同商品的变现数据、看哪些商品有流量和销量,也能有助于你的选择。 前期的简介设定也非常重要,能够传递出更鲜明的人物形象和性格,这也是用户点进你首页后对你的第一印象,简介可以结合内容和姓名让用户更直观的了解你的账号定位,也可以适当的运用一些引导词来提高转换率。 二、热梗叠加二次创作 抖音平台每时每刻都会产出一些热梗,那么当一个视频拥有百万播放量后就会有无数人跟风模仿,那么如何让你的账号在模仿秀中脱颖而出就显得非常重要。 资深抖音运营者都会通过借鉴热点来创作视频,实时热点追踪火爆的几率更大,同时也可以将多个热点串联在一起,抓住用户的兴趣点耐心地看完视频从而增加视频曝光机会,必要的时候也可以给剧情来个反转,出其不意的故事情节能有效的提高点赞量。 三、封面要精准 抖音视频的视觉和听觉都非常重要,当用户在点击账号首页时首先看到的就是你视频的封面,如果你封面上有精准的内容提示就能通过关键词让客户快速了解内容信息,这样能有效的增加视频点击率也能提升用户的关注度。 四、告别搬运 抖音一直对原创内容有更大的流量扶持,同时消重机制也会自动检测视频的相似度,因此如果一个视频发两遍就会降低账号的流量权限,抖音的初衷也是鼓励原创打击搬运。 在这样一个自媒体快速发展的时代,如果没有自己的内容是很难留住用户的,即使搬运账号播放高、点赞高但最后粉丝转换率极低的原因。

    2021年10月9日
    61
  • “种草”“引流”“带货”主播、平台谁承担法律责任?

    直播带货已成为一种新业态,直播营销涉及电商平台、MCN机构、视频直播平台、主播、消费者等不同角色,各种经营主体之间的商业模式和合作框架错综复杂,厘清不同参与方的行为,关系到发生纠纷后的法律适用问题。

    2021年5月16日
    15
  • 数字化工厂有哪些关键技术(数字化工厂的主要技术有哪些)

    数字化工厂是随着数字仿真技术和虚拟现实技术发展而来的,它通过对真实工业生产的虚拟规划、仿真优化,实现对工厂产品研发、制造生产和服务的优化和提升,是现代工业化与信息化融合的应用体现。数字化工厂管理系统有以下几个关键技术: 数字化工厂的关键技术 1、数字化建模技术 通常研究的制造系统是非线性离散化系统,需要建立产品模型、资源模型制造设备、材料、能源、工夹具、生产人员和制造环境等、工艺模型工艺规则、制造路线等以及生产管理模型系统的限制和约束关系。数字化工厂是建立在模型基础上的优化仿真系统,所以数字化建模技术是数字化工厂的基础。 2、虚拟现实技术 文本信息很难满足制造业的需求,随着三维造型技术发展,三维实体造型技术已得到普遍的应用。具有沉浸性的虚拟现实技术,使用户能身临其境地感受产品的设计过程和制造过程,使仿真的旁观者成为虚拟环境的组成部分。 3、优化仿真技术 仿真优化是数字化工厂的价值核心,根据建立的数字化模型和仿真系统给出的仿真结果及各种预测数据,分析数字化工厂中可能出现的各种问题和潜在的优化方案,进而优化产品设计和生产过程。在数字化工厂制造过程中,仿真技术应用主要包括:面向产品设计的仿真,包括产品的静态和动态性能;面向制造过程的仿真,包括加工过程仿真;装配过程仿真和检测过程仿真等;面向企业其他环节的仿真,包括制造管理过程仿真;以及工厂/车间布局、生产线布局仿真等。 4、应用生产技术 数字化工厂通过建模仿真提供一整套较为完善的产品设计、工艺开发与生产流程,但是作为生产自动化的需要,数字化工厂系统要求能够提供各种可以直接应用于实际生产的设备控制程序以及各种是生产需要的工序、报表文件等。各种友好、优良的应用接口,能够加快数字化设计向实际生产应用的转化进程。

    2022年7月26日
    13
  • 手机掉水里了应该怎么处理(手机掉水里怎么办最佳处理技巧)

    中国是一个人口非常庞大的国家,目前中国智能手机普及率已经达到85%以上,在2021年中国各手机品牌出货量在约3.4亿部。可见现在手机已经成为你不可或缺的朋友,现在个人拥有2部及以上手机一点都不稀奇:一部家庭和生活使用,一部用于工作和社交使用。同时现在大部分都是电子交易、到哪都要出示健康码行程码等都离不开手机,手机已经成为我们密不可分的伙伴了。 大家担心的问题是手机进水了怎么办?怎样才能降低损失。 首先我们要了解手机的防尘防水等级 IP等级(Ingress Protection):防尘防水,是针对电气设备外壳对异物侵入的防护等级。通俗点讲,在手机上就是你手机外部的防异物侵入等级。IP等级通常由两个数字组成。这两个数字表示的意义是大不相同的,前面的数字表示防尘等级系数,最高为6;后面的数字表示防水等级系数,最高为8。系数越高,防护能力就越强。 我们说说防水原理: 首先我们知道所有手机元件都是怕水的,手机上开孔很多:电源接口、耳机接口、红外接口、降噪接口、外放喇叭接口、听筒接口、SIM卡接口,音量电源键等等,所第一种方法就是减少手机开孔,将手机上所有不必要的开孔该缩小的缩小,能去掉的就去掉。现在不少手机取消了3.5mm接口、取消了听筒采用屏下发声、甚至音量键都在减少;其目的就是为了降低灰尘和液体的侵入。 但手机总会有一些无法去除的开孔。除减少开孔外,就是在手机的怕水元件处塞上密封圈严密保护;充电口处也会有密封塞,利用压力差来达到初级的防水(现在基本都镀膜了);或者在手机主板上镀上一层防水膜,防止手机进水后无法正常使用,且水蒸气蒸发后能顺利排出。 手机防水等级:一般来说,如果是日常使用,那么IP53或者IP67级的防水已经完全满足,再高也没有什么过于显著的效果了,反而会使购买手机的成本增加。对于一些有特殊摄影要求的人士来说,IP68级防水则无疑是最好的选择 那么问题来了,当你的手机掉落入水中该如何处理呢? 首先你要知道你手机的防尘防水等级,具体参照上图,根据自己手机的防尘防水等级和实际掉落水中的情况进行处理。那么大部分情况我们还是要谨慎一点处理,以便手机能持续稳定使用。 第一步:肯定是先关机:拿起落入水中的手机第一时间长按电源键关机,水是流通的液体,在开机状态下手机可能会引起电路短路 第二步:擦拭且晾干:为减少手机损失,需要及时用纸巾或者纯棉干毛巾擦拭手机表面的水分,尤其是…

    2022年3月27日
    36
  • sso单点登录实现方式(sso单点登录实现原理)

    1、什么是单点登录 单点登录就是用户集群部署的分布式架构下,只需要在某个模块登录后,再去访问其他模块的时候不需要登录验证。 2、单点登录的三种实现方式 (1)session广播机制 实现方式:用户在某个模块登录后,用户信息存在这个模块session中,然后在其他模块进行session复制 缺点:虽然可以实现SSO,但是假如项目有几十个模块,就要复制几十次session,极大的消耗资源资源。 (2)用cookie+redis实现 cookie特点:是一种客户端技术,每次发送请求,带着cookie值进行发送 redis特点:基于key-value进行存储 实现方式:在项目中任何一个模块进行登录,登录之后,把数据放到两个地方: ①redis:在key:生成唯一随机值,在value:存放用户数据 ​ ②cookie:把redis里面生成的key值放到cookie里面 ​ 访问项目中访问其他模块时,发送请求带着cookie进行发送,获取cookie值,到redis根据key进行查询,如果查询到数据就是 登录,查不到就没有登录。 (3)使用token实现 token是什么:按照一定规则生成的字符串,字符串可以包含用户信息 实现方式:在项目某个模块进行登录,登录之后,按照规则生成字符串,把登录之后用户信息包含到生成的字符串里面,把①字符串通过地址栏返回②把字符串通过cookie返回,再去访问其他模块时,在地址栏带着生成的字符串,在访问模块里面获取地址栏字符串,根据字符串获取用户信息,如果可以获取到就是登录。

    2022年6月15日
    17
  • 利用聚合页SEO快速提升网站权重

    钉钉聚合SEO效果 -钉钉聚合策略-内容来源分析 -词库分析 -总结 钉钉近三个月关键词趋势 钉钉聚合SEO效果 钉钉的聚合页策略 前端负责展示页面 后端负责梳理数据 索引页TDK设置 内容来源分析 钉钉的内容库从哪里来的呢?经过调查,内容基本来自3个方向一 一、钉钉自身产生的咨询、问答类内容; 二、阿里云产品中问答题材内容; 三、根据关键词利用程序生成的内容。 词库分析 词库的关键词类型有: 强相关:钉钉相关,软件使用,视频会议,相关商家……弱相关:办公相关,邮箱相关知识,人事系统相关……不相关:教育类关键词、劳动法类……我下载了当前钉钉有排名的关键词数据,一共8223条,大家可以参考哦。 另从我从关键词数据中整理了所有关键词的搜索量情况,并制作了占比图。可以从图中看出,搜索量在10~100之间的词,是主要的获得排名的词。 因为关键词的ID是递增的,如果有技术实力的话,可以爬虫爬出14万关键词都是什么类型。 总结: 阿里巴巴、阿里云、钉钉使用聚合方式做SEO流量都非常成功。 词库 内容=收录 排名。这个规律是被阿里巴巴、阿里云、钉钉多次验证过的,而且身边也有朋友通过类似策略做网站的快速变现,这个方式确实是可以玩的通的。 当然前提是域名的权重,阿里巴巴、阿里云、钉钉都是积累了一定权重后才开始做这个骚操作的。 已经偏灰帽了。而且实际效果上看,钉钉的移动端确实也遭到了很长时间的降权,慎用!

    2021年6月5日
    10