JavaScript快速入门(二)
文件中引入JavaScript
嵌入到HTML文件中
在body或者head中添加script标签
<script>
var age = 10;
console.log(age);
</script>
引入js文件
创建一个js文件
var age = 20;
console.log(age);
在html文件中src引入改文件
<body>
<script src="./age.js"></script>
</body>
引入网络来源文件,和引入本地的js文件一样,通过src
<body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.js"></script>
</body>
数据类型
原始数据类型:基本的数据类型(数值、字符串、布尔值)
复合数据类型:对象(一个对象可以看做是存放各种值得容器,由基础数据类型组成)
var user = {
"name":"ming",
age:20,
is_register:True
}
特殊数据类型:null和undefined
typeof可以用来判断基础数据类型
<body>
<script>
var age = 20;
console.log(typeof age);
</script>
</body>
算数运算符
加减乘除取余:+ 、-、*、/、%
自增或者自减相当于当前值+1或者-1
<body>
<script>
var num = 20;
console.log(++num);
console.log(--num);
</script>
</body>
自增自减需要注意,有两种写法一种运算符号在前,一种运算符号在后,两种效果不一样
运算符号在前是先自增再运行,运算符号在后是先运行在自增
<body>
<script>
var num = 20;
console.log(++num); // 21
var num1 = 20;
console.log(num1++); // 20
</script>
</body>
赋值运算符
| 赋值运算符 | 表达式 |
| = | 赋值运算符 |
| += | x +=y 等同于 x= x+y |
| -= | x -=y 等同于 x = x-y |
| *= | x *= y 等同于 x = x*y |
| /= | x /= y 等同于 x = x/y |
| %= | x %= y 等同于 x = x % y |
比较运算符
| 比较运算符 | 描述 |
| < | 小于 |
| > | 大于 |
| <= | 小于或者等于 |
| >= | 大于或者等于 |
| == | 相等 |
| === | 严格相等 |
| != | 不相等 |
| !== | 严格不相等 |
== 和 ===区别
<body>
<script>
var num = 20;
var num1 = 20;
var num2 = "20";
console.log(num == num1); // True
console.log(num == num1); // True
console.log(num == num2); // True
console.log(num === num2);// 严格比较数值和类型 False
console.log(num != num2);// False
console.log(num !== num2);// True 类型不一致
</script>
</body>
布尔运算符
取反运算符(!)
<body>
<script>
var flag = true;
console.log(!flag);
</script>
</body>
提示 undefind 、null、false、0、NaN、空字符串 取反都为true
且运算符(&&)
<body>
<script>
console.log(10<20 && 10>5); // True
</script>
</body>
活运算符(||)
<body>
<script>
console.log(10>20 || 10>5); // True
</script>
</body>
用Switch简化多个if...else....
swith后面跟表达式,case后面记得一定要加上break,不加上break会把后续的都执行,最后default就是以上case都不是执行
<body>
<script>
var day = 3;
switch(day){
case 0:
console.log("今天周一");
break;
case 1:
console.log("今天周二");
break;
case 2:
console.log("今天周三");
break;
default:
console.log("今天不是周一、二、三")
}
</script>
</body>
用三目运算符来代替if...else...
<表达式>?y :x
表达式正确返回y,错误则返回x
<body>
<script>
var num = 10;
var result = num % 2 == 0 ? "是偶数" : "是奇数";
console.log(result)
</script>
</body>
字符串
<body>
<script>
//字符串要么使用单引号嵌套双引号,要么使用双引号嵌套单引号
var str1 = '我说"你好呀"';
//如果想使用双引号嵌套双引号,单引号嵌套单引号或者换行就需要用到反斜杠
var str2 = '我说\'你好呀\'';
var str3 = "今天天气真好,\
我想出去玩";
console.log(str1,str2,str3);
</script>
</body>
用属性length来查看字符串长度
<body>
<script>
var str3 = "今天天气真好,\
我想出去玩";
console.log(str3.length);
</script>
</body>
charAT查看索引位置的字符串
<body>
<script>
var str = "yetangjian的博客园";
console.log(str.charAt(1)); // 查看索引1位置的字符串e
console.log(str.charAt(str.length -1));//查看最后一位的字符园
//如果索引不存在会打印出来空字符串
console.log(str.charAt(-1));
console.log(str.charAt(str.length+1));
</script>
</body>
concat连接两个字符串,创建新的字符串,不影响老的字符串(拼接的如果不是字符串,也会先转为str再拼接)
同样也可以用“+”拼接
<body>
<script>
var str = "yetangjian的博客园";
var str1 = "丰富多彩呀~~";
var result = str.concat(str1);
document.write(result);//页面上展示出来拼接后的
// 可以接收多个参数拼接
var str3 = "看的停不下来了";
document.write(str.concat(str1,str3));
</script>
</body>
concat和+号的区别
+号会先运算数字类型在转,所以下方会先做1+2后再转字符串
concat不管什么,都会转字符串拼接
<body>
<script>
var num1 = 1;
var num2 = 2;
var str3 = "3";
document.write("".concat(num1,num2,str3)); // 123
document.write(num1+num2+str3);// 33
</script>
</body>
substring截取字符串,两个参数,参数1开始的位置的索引,第二个参数结束位置的索引(结束索引位置不取,左闭右开)
<body>
<script>
var str = "yetangjian的博客园";
// 截取博客园三个字,左闭右开
document.write(str.substring(11,str.length));
// 省略第二个参数,直接取到最后
console.log(str.substring(11)); //博客园
//在substring中参数如果是负数,直接当索引0用
</script>
</body>
substr用法基本和substring一样,区别是第二个参数不在是结束位置的索引,而是字符串的长度
<body>
<script>
var str = "yetangjian的博客园";
var result = str.substr(11,3);//从索引位置11开始取,截取长度为3
document.write(result);//博客园
//如果省略第二个参数,直接取到结尾,如果第二个参数是个负数,会变为0即字符串长度为0的空字符串
console.log(str.substr(11));//博客园
console.log(str.substr(11,-4));//空字符串
//如果第一个参数是负数,则从后向前计算字符位置,这个和之前的字符串不太一样
console.log(str.substr(-3));
</script>
</body>
indexof查询字符串第一次出现的位置,不存在则返回-1
<body>
<script>
var str = "yetangjian的博客园";
// 判断上述字符换中是否存在博客园
if (str.indexOf("博客园") > -1){
console.log("存在");
}else{
console.log("不存在");
}
// 参数2位置开始索引位置
console.log(str.indexOf("博客园",12));//从12索引位置不存在了,所以返回-1
</script>
</body>
trim方法去除首尾两端的空格,包括\r \n \t都能去掉
<body>
<script>
var str = " yetangjian的博客园 ";
console.log(str);// yetangjian的博客园
console.log(str.trim());//yetangjian的博客园
</script>
</body>
split方法是按分隔符,返回一个分割出来的字符串数组
<body>
<script>
var str = "yetangjian|的|博客园";
var result = str.split("|");
console.log(result);// ["yetangjian", "的", "博客园"]
console.log(str.split(""));//["y", "e", "t", "a", "n", "g", "j", "i", "a", "n", "|", "的", "|", "博", "客", "园"]
//存在第二个参数可以设置获取数组的长度
console.log(str.split("",2));//["y", "e"]
</script>
</body>
数组
查询、追加
<body>
<script>
var arr = [];
arr[1] = 1 // 通过下标加入数组值
console.log(arr)
console.log(arr[1])//1
console.log(arr.length)//2
</script>
</body>
遍历
<body>
<script>
var city = ["shanghai","guangzhou","beijing"]
// for
for (var i=0;i<city.length;i++){
console.log(city[i]);
}
// while
i = 0
while (i < city.length){
console.log(city[i]);
i++
}
// for in
for (var i in city){
console.log(city[i]);
}
</script>
</body>
数组静态方法Array.isArray():判断是否为数组
<body>
<script>
var city = ["shanghai","guangzhou","beijing"]
console.log(typeof(city));//object
console.log(Array.isArray(city));//true
</script>
</body>
push()/pop()方法:改变原数组末尾增加或删除
<body>
<script>
var city = ["shanghai","guangzhou","beijing"]
//push
city.push("nanjing");
city.push("fujian","xiamen");//向尾部添加一个或多个
console.log(city);
//pop
var deleteend = city.pop();
console.log(deleteend);//"xiamen"
console.log(city);//["shanghai", "guangzhou", "beijing", "nanjing", "fujian"]
</script>
</body>
shift()/unshift:改变原数组在数组起始位置添加或删除
<body>
<script>
var city = ["shanghai","guangzhou","beijing"];
//shift
var shiftfirst = city.shift();
console.log(shiftfirst);//shanghai
console.log(city);//["guangzhou","beijing"]
//unshift
city.unshift("hefei","chongqing");
console.log(city);// ["hefei", "chongqing", "guangzhou", "beijing"]
</script>
</body>
join按指定分隔符拼接数组成员,默认都是逗号
<body>
<script>
var city = ["shanghai","guangzhou","beijing"];
//join
document.write(city.join());//shanghai,guangzhou,beijing
document.write(city.join("|"));//shanghai|guangzhou|beijing
document.write(city.join(""));//shanghaiguangzhoubeijing
//join可以把数组拼成字符串,split可以把字符串拆成数组
var result = city.join("|");
console.log(result);
var newArr = result.split("|");// shanghai|guangzhou|beijing
console.log(newArr);//["shanghai", "guangzhou", "beijing"]
</script>
</body>
concat数组合并
<body>
<script>
var city = ["shanghai","guangzhou","beijing"];
var contry = ["China","Japan"]
//concat和+号区别
console.log(city + contry);//变为字符串了shanghai,guangzhou,beijingChina,Japan
console.log(city.concat(contry));//还是数组["shanghai", "guangzhou", "beijing", "China", "Japan"]
//使用concat数组追加,注意看下面例子
console.log(city.concat(1,2,3,[4,5,6]));// ["shanghai", "guangzhou", "beijing", 1, 2, 3, 4, 5, 6]
</script>
</body>
reverse翻转
<body>
<script>
var city = ["shanghai","guangzhou","beijing"];
console.log(city.reverse());//["beijing", "guangzhou", "shanghai"]
//翻转字符串
var word = "apple";
console.log(word.split("").reverse().join(""));//elppa
</script>
</body>
indexof返回元素在数组中第一次出现的位置,没有则返回-1
<body>
<script>
var city = ["shanghai","guangzhou","beijing","shanghai"];
console.log(city.indexOf("shanghai"));//0
console.log(city.indexOf("nanjing"));//-1
//第二个参数为起始位置
console.log(city.indexOf("shanghai",2));//3
</script>
</body>
JavaScript快速入门(二)的更多相关文章
- JavaScript快速入门(四)——JavaScript函数
函数声明 之前说的三种函数声明中(参见JavaScript快速入门(二)——JavaScript变量),使用Function构造函数的声明方法比较少见,我们暂时不提.function func() { ...
- python3.5+django2.0快速入门(二)
昨天写了python3.5+django2.0快速入门(一)今天将讲解配置数据库,创建模型,还有admin的后台管理. 配置数据库 我们打开mysite/mysite/settings.py这个文件. ...
- JavaScript快速入门(二)——JavaScript变量
变量声明 JavaScript的变量声明分为显式声明跟隐式声明. 显式声明 即带var关键字声明,例如 var example = example; 要注意JavaScript里面声明的关键字只有fu ...
- Javascript快速入门(上篇)
Javascript的熟练之路,小弟来了. JavaScript简介:JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript ...
- Web开发初探之JavaScript 快速入门
本文改编和学习自 A JavaScript Primer For Meteor 和 MDN Web教程 前文 Web开发初探 概述 本文以介绍 JavaScript 为主,初学者掌握本文的内容后,将能 ...
- javascript快速入门
这个在w3school在线文档讲解的很详细,还能在线练习. 所以我只写一些入门的东西和最常用的总结以及注意事项: JavaScript 是脚本语言 一般被人们称为JS,Jquery就是对js语言的封装 ...
- Javascript快速入门(下篇)
Javascript, cheer up. Ajax:其通过在Web页面与服务器之间建立一个额外的处理层,这个处理层就被称为Ajax引擎,它解释来自用户的请求,在后台以异步的方式处理服务器通信,其结构 ...
- JavaScript 快速入门回顾
数据类型Number JavaScript不区分整数和浮点数,统一用Number表示,以下都是合法的Number类型: 123; // 整数123 0.456; // 浮点数0.456 1.2345e ...
- JavaScript快速入门-简介
一.JavaScript历史(摘自w3school) JavaScript 是因特网上最流行的脚本语言,它存在于全世界所有 Web 浏览器中,能够增强用户与 Web 站点和 Web 应用程序之间的交互 ...
- JavaScript快速入门-ECMAScript基础语法
一.JavaScript引入方式 1.行内式 <script> alert(123); </script> 2.外链式 <script src='custom.js'&g ...
随机推荐
- mac 安装 nginx 流程,并解决前端跨域问题
mac 安装 nginx 流程 首先mac安装brew包管理工具: /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN ...
- 如何在VM虚拟机里建立Linux操作系统
1.新建虚拟机 2.选择典型安装 3.选择稍后安装操作系统 4.选择Linux操作系统和CentOS 7 64位 5.选择文件路径 注意:建议每台虚拟机单独文件夹保存,并且此处路径最好不要有中文出现 ...
- 阿里云Linux服务器安装Maven实战教程
下载地址 https://maven.apache.org/download.cgi 文件上传 把下载的文件上传到阿里云服务器 /usr/local/software 的目录(使用工具) window ...
- GIS介绍(详细)一、什么是GIS?
其他GIS空间分析文章 博主的参考书籍是科学出版社的地理信息系统原理(华一新.赵军喜等) 一.什么是GIS? 要说明什么是GIS,我们就得学习其基本术语,从而引出GIS的定义: 1.信息 狭义的信息论 ...
- Hbase操作与编程使用
1.任务: 列出HBase所有的表的相关信息,例如表名: 3. 编程完成以下指定功能(教材P92下): (1)createTable(String tableName, String[] fields ...
- nojejs 弹出子窗口,取值后返回
1.主窗口: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <ti ...
- Audition导入视频文件出现错误
错误: We were unable to open this file using any of the currently available importers. If you would li ...
- Assert的使用和简单解释
Assert 的简单使用 Document d = Jsoup.connect("http://www.baidu.com").get(); Assert.notNull(d, & ...
- C/C++ 顺序表的初始化、添加、插入、删除(删除顺序表中指定的所有元素)
#include <iostream> #include <stdlib.h> #define MAX_SIZE 100 using namespace std; typede ...
- Error parsing HTTP request header 控制台报错分析与解决
控制台报错信息: org.apache.coyote.http11.AbstractHttp11Processor process 信息: Error parsing HTTP request hea ...