个人博客网:https://wushaopei.github.io/    (你想要这里多有)

一、JS 的 介绍

1、JavaScript :简称 : js

js 分为三个部分:

1. ECMAScript 标准----js的基本的语法
2. DOM------Document Object Model 文档对象模型
3. BOM------Browser Object Model 浏览器对象模型

2、JavaScript 是什么?

①语言类型

是一门脚本语言,
是一门解释性语言,
是一门动态类型的语言,
是一门基于对象的语言。

②编译语言:需要把代码翻译成计算机所认知的二进制语言,才能够执行


* 脚本语言:不需要编译,直接执行
* 常见的脚本语言:t-sql,cmd

③ 硬件与 js 的关系

 电脑的硬件---->系统--->客户端的程序--->代码
电脑的硬件---->系统--->浏览器--->js代码

④ js的作用

解决用户和浏览器之间的交互的问题

在实际开发中的角色:

 HTML:是标记语言,展示数据的
CSS:美化页面
JavaScript:用户和浏览器交互,

示例:

<script>
//js的代码了
alert("哈哈,我又变帅了");//在页面中弹出一个对话框
</script>

效果展示:

3、js 的 代码可以分三个地方写:

①在html 的文件中,script 的标签中写 js代码

 <head>
<script>
//js代码
alert("锄禾日当午,地雷埋下土,小苏走过去,炸成二百五");//在页面中弹出对话框
</script>
</head>

②js 代码可以在html 的标签中写

<input type="button" value="按钮" onclick="alert('被点了');"/>

③在 js 文件中可以写 js 代码,但是需要在html  的页面中引入 script 的标签中的 src = " js 的路径 "

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

test.js 中的 js 代码 :

alert("我是外部的js文件中的代码");

执行效果:

4、js 代码的注意问题

 1.在一对script的标签中有错误的js代码,那么该错误的代码后面的js代码不会执行
2.如果第一对的script标签中有错误,不会影响后面的script标签中的js代码执行
3.script的标签中可以写什么内容 type="text/javascript"是标准写法或者写language="JavaScript"都可以
但是,目前在我们的html页面中,type和language都可以省略,原因:html是遵循h5的标准 4.有可能会出现这种情况:script标签中可能同时出现type和language的写法. 5.script标签在页面中可以出现多对
6.script标签一般是放在body的标签的最后的,有的时候会在head标签中 7.如果script标签是引入外部js文件的作用,那么这对标签中不要写任何的js代码,如果要写,重新写一对script标签,里面写代码

1 和 2 的问题示例:

	    alert("哈哈;   //少了一个括号,不执行

              alert("嘎嘎");  // 正常执行

3 和 4 和 5  的实例:

        <script type="text/javascript">
alert("又弹出来了");
</script>
<script type="text/javascript">
alert("又执行了");
</script>

6 和 7 的示例:

<body>
<script src="test.js"></script>
</body>

二、变量

1、变量的定义与内存地址:

①操作的数据都是在内存中操作

②js中存储数据使用变量的方式(名字,值--->数据)

③js中声明变量都用var---->存储数据,数据应该有对应的数据类型

④js中的字符串类型的值都用双引号或者单引号

示例---变量的声明与赋值:

 //存储一个数字10
// 变量的声明及赋值
var num=10;
// 存储一个名字
var name='小黑';

2、变量的作用于初始化、声明:

①作用:

用来操作数据的(可以存储,可以读取)

②变量声明: 有 var  有变量名字,没有赋值

③变量初始化: 有var 有变量名字,有赋值

  • 变量声明的方式:

var   变量名字;

  • 声明与赋值:
var number;//变量的声明,此时是没有赋值的
//一次性声明多个变量
var x,yx,z,k,j;//都是声明,没有赋值
//变量的初始化(变量声明的同时并且赋值了)
= 的意义: 赋值的意义

  • 初始化、声明示例:
        // 存储一个数字10
var number = 10;
console.log(number); //存储一个5
var number2 = 5;
console.log(number2); //存储一个人的名字
var name = "文兴";
console.log(name); //存储真 (true)
var boolean = true;
console.log(boolean); //存储一个null --- > 相当于是空
var nll = null;
console.log(nll); //存储一个对象
var obj = new Object();
console.log(obj);

浏览器查看效果:

3、变量的规范与注意问题:

①注意的基本的代码的规范

 js中声明变量都用var
js中的每一行代码结束都应该有分号;(写代码有分号的习惯)
js中的大小写是区分的: var N=10; n
js中的字符串可以使用单引号,也可以使用双引号,目前我们暂时使用双引号

②变量名的注意问题---变量名的命名规范,要遵循驼峰命名法

1.变量的名字要有意义,
2.变量名有一定的规范:一般以字母,$符号,下划线开头,中间或者后面可以有$符号,字母,数字
3.变量名一般都是小写的
4.变量名如果是多个单词,第一个单词的首字母是小写的,后面的所有的单词的首字母都是大写的,这种命名方式称为:驼峰命名法
5.不能使用关键字(系统自带的一些单词,不能使用)
6.不会单词用拼音,拼音也要遵循驼峰命名法

示例:

(1)声明变量并初始化---变量的初始化----声明变量赋值

 //声明了一个num的变量存储了一个数字100
var num = 100;
//输出这个变量的值
alert(num);//弹框
//浏览器的控制台在浏览器中的开发人员工具中(快捷键:F12)的console的选项中
console.log(num);//把内容输出在浏览器的控制台中

效果截图:

(2)声明多个变量然后一个一个的赋值

        var num1,num2,num3;//声明
//一次的赋值
num1=10;
num2=20;
num3=30; //声明多个变量并且赋值
// var num1=10,num2=20;num3=30;

4、变量的交换:

(1)扩展的变量的交换:只需要看代码,不需要理解---位运算

        var num1 = 10;
var num2 = 20;
//把num1 这个变量的值取出来放在 temp 变量中
var temp = num1;
// 把 num2 这个变量的值取出来放在 num1 变量中
num1 = num2;
// 把 temp 变量的值取出来放在num2 变量中
num2 = temp ;
console.log(num1); // 20
console.log(num2); // 10

(2)第二种方式交换:一般适用于数字的交换

         var num1 = 10;
var num2 = 20;
// //把num1的变量中的值和num2变量中的值,取出来相加,重新赋值给num1这个变量
num1 = num1 + num2 ; //30
// //num1变量的值和num2变量的值取出来,相减的结果重新赋值给num2
num2 = num1 - num2; //10
// //num1变量的值和num2变量的值取出来,相减的结果重新赋值给num1
num1 = num1 - num2; //20
console.log(num1,num2);

(3)扩展的变量的交换:了解 ---位运算

        var num1 = 10;
var num2 = 20;
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
console.log(num1,num2);

5、快件键:

  • 快捷键 : Ctrl+Alt+L----->格式化代码的(设置代码有很好的格式,代码是错误的,这个快捷键是没有效果)

三、注释

注释 : 是解释代码的含义,给其他的程序员看的

注释的方式:
1.单行注释 //
2.多行注释 /★★/

说明:

//   单行注释:一般用在一行代码的上面
    /*  多行注释:一般是用在函数或者是一段代码的上面*/

//  代码中如果没有注释,不规范,天天会被骂醒

//  注释后的代码不执行了

示例:

 //console.log("哈哈,我又变帅了");
//console.log("第二行");

四、JS 的 数据类型

1、JS 的 数据类型有哪些?

js中的原始数据类型:number,string,boolean,null,undefined,object

  • 说明:
number:数字类型(整数和小数)
string:字符串类型(的值一般都是用单引号或者是双引号括起来) "34"
boolean:布尔类型(值只有两个,true(真1),false(假0))
null:空类型,值只有一个:null,一个对象指向为空了,此时可以赋值为null
undefined:未定义,值只有一个:undefined

  • 什么情况下的结果是undefined
变量声明了,没有赋值,结果是undefined
函数没有明确返回值,如果接收了,结果也是undefined

  • 注意:
如果一个变量的结果是undefined和一个数字进行计算,结果:NaN不是一个数字,也没有意义

2、如何获取这个变量的数据类型是什么?

使用typeof 来获取

语法:
typeof 变量名
typeof(变量名)

3、数据类型 - - - 示例:

        var num = 10;
var str = "文";
var flag = true;
var nll = null;
var undef;
var obj = new Object(); console.log(typeof num);
console.log(typeof str);
console.log(typeof flag);
console.log(typeof nll);
console.log(typeof undef);
console.log(typeof obj);
console.log(typeof num); console.log("10");
console.log(10);

4、数字类型: 整数和小数

     num=20;整数
num=98.76;小数(其他的语言中,浮点型---单精度,双精度浮点) 所有的数字都是属于number类型 其他的语言:
整数类型:int
单精度浮点型:float
双精度浮点型:double

(1)数字进制:

  二进制:遇到2进一

       00000001-----1
00000010-----2
00000011-----3
00000100-----4
00000101----5
00000110----6
00000111-----7
00001000-----8
00001001----9 八进制:遇到8进一 00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000010-----8
00000011-----9
00000012-----10 十进制:遇到10进一 0
1
2
3
4
5
6
7
8
9
10 十六进制:遇到f进一 00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000009
0000000a----10
0000000b---11
0000000c----12
0000000d---13
0000000e---14
0000000f---15
00000010---16
00000011---17
00000012---18
0f12a

(2) 示例:

    js中可以表示的进制有:
var num=10;//十进制
var num2=012;//八进制
var num3=0x123;//十六进制 var num=12;//十进制
console.log(num);
var num2=012;//八进制
console.log(num2);
var num3=0x1a;//十六进制
console.log(num3);

(3)数字类型 的 范围 及 验证方式:

①范围 --- 最值:

    //数字类型有范围: 最小值和最大值
console.log(Number.MAX_VALUE);//数字的最大值
console.log(Number.MIN_VALUE);//数字的最小值

②验证: NaN 、isNaN

  • 不要用小数去验证小数.
    var x=0.1;
var y=0.2;
var sum=x+y;
console.log(sum==0.3);

  • 不要用小数去验证小数.
    var x=0.1;
var y=0.2;
var sum=x+y;
console.log(sum==0.3);

  • 不要用NaN验证是不是NaN
    var num;
console.log(num+10==NaN);
console.log("您好"=="我好");

  • 正确的验证方式:使用 isNaN()
    var num;//-----变量声明了,没有赋值,结果是:undefined
//是不是不是一个数字----->不是一个数字吗? NaN--->不是一个数字
console.log(isNaN(10));

示例:判断结果不是一个数字可以使用isNaN(变量名)

     var str="您好";
var num;
var sum=num+10;//NaN
console.log(sum);
console.log(isNaN(sum));//不是数字为true,是数字结果为false

5、布尔类型

  • 布尔类型:的值有两个,一个是true(真),一个是false(假)
    var flag=1;
console.log(flag); var fdf=null; var num=0;

6、类型转换

主要有两种:① 转换为数字类型、②转换为字符串类型、③其他类型转布尔类型

(1) 其他类型转数字类型: 三种方式:

    1.parseInt();//转整数
console.log(parseInt("10"));//10
console.log(parseInt("10afrswfdsf"));//10
console.log(parseInt("g10"));//NaN
console.log(parseInt("1fds0"));//1
console.log(parseInt("10.98"));//10
console.log(parseInt("10.98fdsfd"));//10 2.parseFloat()//转小数
console.log(parseFloat("10"));//10
console.log(parseFloat("10afrswfdsf"));//10
console.log(parseFloat("g10"));//NaN
console.log(parseFloat("1fds0"));//1
console.log(parseFloat("10.98"));//10.98
console.log(parseFloat("10.98fdsfd"));//10.98 3.Number();//转数字
console.log(Number("10"));//10
console.log(Number("10afrswfdsf"));//NaN
console.log(Number("g10"));//NaN
console.log(Number("1fds0"));//NaN
console.log(Number("10.98"));//10.98
console.log(Number("10.98fdsfd"));//NaN

总结  :  想要转整数用parseInt() , 想要转小数用parseFloat()

注意 : 想要转数字:Number();要比上面的两种方式严格

(2)其他类型转字符串类型

    1   .toString()

    var num=10;
console.log(num.toString());//字符串类型 2 String(); var num1=20;
console.log(String(num1));

注意:

如果变量有意义调用.toString()使用转换
    如果变量没有意义使用String()转换

   <script>
var num2;
console.log(num2.toString());
var num3=null;
console.log(num3.toString()); //这个可以
var num2;
console.log(String(num2));
var num3=null;
console.log(String(num3));
</script>

(3)其他类型转布尔类型

<script>
Boolean(值); console.log(Boolean(1));//true
console.log(Boolean(0));//false
console.log(Boolean(11));//true
console.log(Boolean(-10));//true
console.log(Boolean("哈哈"));//true
console.log(Boolean(""));//false
console.log(Boolean(null));//false
console.log(Boolean(undefined));//false var str=10;
console.log(+str);
</script>

JavaScript (一) js的介绍及基本语法变量的更多相关文章

  1. 前端之JavaScript:JS简单介绍

    JavaScript(JS)之简单介绍 一.JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名Scr ...

  2. js的介绍 及用法 常量 变量!

    1.js介绍 js全程叫javascript,但不是java 他是一门前台语言 而java是后台语言. js的作者是布兰登 爱奇 前台语言:运行在客户端 后台语言:跟数据库有关的. 2.能干什么? 页 ...

  3. 阅读:重新介绍 JavaScript(JS教程)

    这篇文章是记录自己阅读重新介绍 JavaScript(JS 教程)的记录和个人体会 在线调试代码工具:https://codepen.io/pen 引言 分歧根源:名字Javascript和Java有 ...

  4. 前端之 js的介绍和javascript的基础使用

    一 javasvript的介绍 JavaScript概述 1 JavaScript发展史 1.1 1992年Nombas开发出C-minus-minus(--)的嵌入式的脚本语言(最初绑定在CEnvi ...

  5. Handlebars的基本用法 Handlebars.js使用介绍 http://handlebarsjs.com/ Handlebars.js 模板引擎 javascript/jquery模板引擎——Handlebars初体验 handlebars.js 入门(1) 作为一名前端的你,必须掌握的模板引擎:Handlebars 前端数据模板handlebars与jquery整

    Handlebars的基本用法 使用Handlebars,你可以轻松创建语义化模板,Mustache模板和Handlebars是兼容的,所以你可以将Mustache导入Handlebars以使用 Ha ...

  6. web前端----JavaScript(JS)简单介绍

    JavaScript(JS) 一.JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEa ...

  7. JavaScript (五) js的基本语法 - - - 面向对象、工程模式、内置对象、JSON

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.编程思想 1.定义: 编程思想:把一些生活中做事的经验融入到程序中 面向过程:凡事都要亲力亲为,每件 ...

  8. 关于sass的介绍和基本语法

    引入 什么是sass?sass是css预处理器. 那预处理器又是什么?css本身不是一种编程语言,而预处理器是用一种专门的编程语言,进行网页样式设计,然后再编译成正常的CSS文件. 如今主流的预处理器 ...

  9. javascript基础语法——变量和标识符

    × 目录 [1]定义 [2]命名规则 [3]声明[4]特性[5]作用域[6]声明提升[7]属性变量 前面的话 关于javascript,第一个比较重要的概念是变量,变量的工作机制是javascript ...

随机推荐

  1. 【Spark】通过SparkStreaming实现从socket接受数据,并进行简单的单词计数

    文章目录 步骤 一.创建maven工程并导入jar包 二.安装并启动生产者 三.开发SparkStreaming代码 四.查看结果 步骤 一.创建maven工程并导入jar包 <properti ...

  2. Node教程——封装一个token验证器

    重要说明 这个轮子是 使用 express@5.0 + MongoDB构建起来的一个 node后台通用的验证器,里面主要讲的就是使用jwt,token进行验证,当然你想使用session也没问题,但是 ...

  3. [codeforces525D]BFS

    题目大意: 给定一个包含'.'和'*'的地图,每次操作可以把'*'->'.',用最少的操作使得新图满足条件:所有的连通块为矩形('.'为可达点) 解法: 用bfs来模拟操作的过程,对于一个2*2 ...

  4. 使用GitHub的API实现文件上传--李渣渣(lizaza.cn)

    最近搭建了一个自己的博客网站和一个在线图片格式转换工具,经常写博客的时候需要上传图片,在线转换工具也需要一定的空间来临时存放图片文件.服务器的存储空间又比较有限,于是就想着将图片存储的GitHub上, ...

  5. vscode+eslint自动格式化vue代码的方法

    前言 使用vscode开发vue项目的时候,为了编码格式的统一化,使用eslint规范进行格式化.此时通过eslint插件可以实现对vue代码的自动格式化. 使用方式 在vscode的插件模块处,搜索 ...

  6. React-Router 4 两个常用路由变量

    讲真我个人不太喜欢4.x版本,虽然作者自信动态路由的形式符合React组件化的哲学,但是路由和一般组件耦合太深,而且后期组件分片也麻烦,以后需要重构的话怕是会一番折腾.同学公司用的还是3.x版本. 不 ...

  7. Scrapy 框架 入门教程

    Scrapy入门教程 在本篇教程中,我已经安装好Scrapy 本篇教程中将带您完成下列任务: 创建一个Scrapy项目 定义提取的Item 编写爬取网站的 spider 并提取 Item 编写 Ite ...

  8. 使用Flutter开发的抖音国际版

    简介 最近花了两天时间研究使用Flutter开发一个抖音国际版. 先上图,个人感觉使用Flutter开发app快得不要不要的额.  两天就基本可以开发个大概出来.   最主要是热更新,太方便实时调整U ...

  9. 为什么我不建议你通过 Python 去找工作?

    二哥,你好,我是一名大专生,学校把 Python 做为主语言教给我们,但是我也去了解过,其实 Python 门槛挺高的,所以我在自学 Java,但是我现在并不清楚到底要不要全心的去学 Java,学校里 ...

  10. B. Sleepy Game 博弈搜索

    题意:给一个有向图和起点,然后只有一名选手,这名选手可以随意挪动棋子,最终不能动的时候走过的边为奇数边为Win并输出路径,否则如果有环输出Draw,否则输出Lose; 题目链接 知道状态数最多只有n* ...