javascript第一天

时间:2019-12-19
本文章向大家介绍javascript第一天,主要包括javascript第一天使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

javaScript

Bernden Eich(javaScript之父)

Chrome浏览器,它的引擎是V8;

javaScript 基本骨架;type是属性;JavaScript是文本;

<script type="text/javascript">
    
</script>

注意:这个type可以不写,但要写一定要写准确,否则失效;

**JavaScript对__空格、缩进、换行都不敏感;**

一定要写在HTML里面;这样页面运行;Javascript也跟着运行;

后期压缩页面时;分号是非常重要的;

注释

javascript的注释符号://可以注释一行 /* 我是注释*/_可以注释很多;块级注释

警告框

alert(“ 在浏览器上显示 ”);-- alert英语中就是警报的意思;能够让浏览器弹出警告框;

<script type="text/javascript">
    alert("你好啊!世界");
    alert("中文必须用双引号");
    alert('也可以用单引号');
    alert("不用会报错");
    alert("数字可以不用;比如");
    alert(123456789);
</script>
<script type="text/javascript">
    alert("可以一直写这个");
    alert("浏览器会一条条执行");
    alert("从上往下执行alert");
    alert("一个漂亮的顺序");
    alert("可以弄成一个死循环");
    alert("气死你想气死的人");
</script>

输入框

prompt(“ 在浏览器上显示 ”);-- prompt英语中就是提示的意思;能够让浏览器弹出输入框;

prompt("这里可以输入你想输入的东西","默认值");
prompt("你的电话开头这个,后面的你自己要写","1665");

可以在输入框里输入东西存入变量里;最后就会把你输入的东西,输出出来;

var a = prompt("你电话号码是?","1665");
alert("我知道你电话号码了"+ a);

控制台

console浏览器的控制台

为了在控制台显示东西;console就是控制台;后期是内置对象;logo只是它一个方法;

<script type="text/javascript">
    console.log("可以在控制台显示");
    console.log("中文必须用双引号");
    console.log('也可以用单引号');
    console.log("不用的话会报错");
    console.log("数字可以不用;比如");
    console.log(123456789);
</script>

字面量

英语名:literals;有些书上直接叫量;看见什么;它就是什么;

数字的字面量;字符串的字面量;等等还有很多;

数字的字面量

数字的字面量就是数字自己,并不需要任何符号来界定这个数字;

整数字面量

JavaScript数字字面量中只有三个:

10进制:普通数字就是十进制;_ _

**8进制:如果以_ 0 _开头、0o开头、0O开头的都是八进制;八进制只有0-7;**

16进制:如果以0x开头的都是十六进制;0-9;10=a;11=b;12=c;13=d;14=e;15=f

数字面量可以负数、小数,如果给数字加上单引号就会变成字符串

八进制算法:0o16 = 14;0o_表示 _八进制;1 _表示 _1*8;6 _表示 _6 * 1;0o+1 * 8+6 * 1=14;

三个数0116=78;0_表示 _八进制;1 _表示 _1 * 64;1 _表示 _1*8;6 _表示 _6 * 1;0+1 * 64+1 * 8+6 * 1=78;

十六进制算法:0xa = 17;a=11;0x_表示 _十六进制;1 _表示 _1*16;1 _表示 _1 * 1;0x+1 * 16+1 * 1=17;

console.log(16);  //十进制   __16
console.log(016); //八进制   __15
console.log(0xf); //十六进制 __22

Infinity

试图输出一个非常大的数字

console.log(1e1545121521);

结果等于

**Infinity //表示无穷大;*注意!大小写 **

也可以是负的无穷大

console.log(-1e1545121521);

**-Infinity //表示负无穷大;*注意!大小写**

也可以在控制台直接输入无穷大;可以不用写引号 *注意!大小写

console.log(Infinity);
console.log(-Infinity);

NaN

NaN 全英文not a number,不是一个数。比较哲学的是,这个 ” 不是一个的数 “ 是一个数字字面量

console.log(0/0);
console.log(NaN);

浮点数字面量

允许使用_ e 来表示乘以 10 _ 的几次幂(方);

console.log(1e3);     表示1*10三次方;e表示10;e后面的表示_e _的次方;
console.log(1e-3);    表示1*10负三次方;
console.log(1.6e-3);    表示1.6*10负三次方;
console.log(.1e3);    表示0.1*10三次方;

转义字符

\表示转义字符

在控制台里console.log("我想多个“ ”兄弟");这里面无法存在两个双引号;只能一双一个单引号;如果就想要写两个双引号;用反斜杆来实现;

console.log("我想多个\“ \”兄弟");//这样就能实现存在两个或多个“”;单引号也一样;
console.log("我想多个\\ \\兄弟");//控制台会显示我想多个\\兄弟;

\n表示换行;“  " 可以表示双引号;      可以表示反斜杆;

alert("你猜\n我\n在第几行");
console.log("你猜\n我\n在第几行");

变量

变量(Variables); var 是定义一个变量;

var a;//定义变量 a
a = 100;//赋值给 a 变量;相当于给小孩起name  ‘=’两边可以加空格;
console.log(a);//在控制台上输出 a
//结果为 100;

可以定义和赋值一起写

var a = 100;//赋初值
console.log(a);//在控制台上输出 a
//结果为 100;//结果为 100;

如果变量没有被赋值,就输出,则会报错

变量民只能以字母、美元符、下划线开头;保留字、关键字、特殊符号

合法定义变量名

var a;
var A;
var $;
var $__$;
var _abc;
var $o0__0o$;
var ___;
var _;

这些都是合法可以使用的;

一个var后面可以跟多个变量,只需要每个变量之间加一个 ‘ 逗号 ’

var a=10 ,b=100 ,b=1000;

区分变量

var a = "你输出一下看看; ";
console.log(a);//这里不能加引号;加了引号就会变成字符串
//值为:你输出一下看看;
console.log("a");
//值为:a

变量的赋值

等号‘ = ’ 就是赋值符号;在JS里等号‘ = ’没有其它意思含义;等号‘ = ’就是赋值;定义不赋值,值是undefined;

等号‘ = ’ 就是把右边的值赋给左边;

var a;
a = 100;

如果一个变量只是被 var 了;但是没有赋值就输出;此时值就是 ' undefined '

var a;
console.log(a);
//结果为 undefined

变量声明提升

这个毛病是JS独有的;

a = 100;
var a;
console.log(a);
//结果依然为100;

等价于

var a;
a = 100;
console.log(a);
//结果依然为100;

下面这个是错误的;只能提升声明;不能提升赋初值;

console.log(a);
var a = 100;
//结果是语法错误;

变量的时候不能加引号;如果加了引号,就变成字符串了;

var a = 100;
console.log("a");
//此时结果为a

引号是“字符串“的定界符;所以在双引号里的_ a 已经失去了变量的意思;就是一个字符串 a _;

等价于

var a = "哈哈";
console.log(a);
//此时结果为‘哈哈’

变量的类型

JavaScript中的值;无论是字面量还是变量,都有明确的类型;

基本类型有五种:

number  数字类型
string  字符串类型
undefined   undefined类型;变量未定义时的值;这个值自己是一种类型
boolean 布尔类型;仅有两个值true和false;
null    null类型;这个值自己是一种类型;

typeof关键字

typeof是用来检测一个变量的类型;

var a = 100;
var b = "变量";
console.log(typeof a);//结果为number__数字类型
console.log(typeof b);//结果为string___字符串类型

number数字类型

unmber不会细分正负数、小数、整数int、浮点数float、大小、进制、Infinity、NaN

string字符串类型

var a = "我是字符串";
var b = "123";
var c = "";//空字符串;也是字符串
console.log(typeof a);
console.log(typeof b);
console.log(typeof c);
//结果全都是
string
string
string

undefined 类型

一个变量只var ,没有赋初值,它的默认值是undefined;

undefined类型是undefined,undefined只有一个undefined;自成一家;

var a;
console.log(a);
console.log(typeof a);
//结果为
undefined
undefined

加号

加号是一个运算符;

从左往右算;

加号两边如果都是数字;则是数学加法;两边都不是时;则是连字符;连字符则是字符串

console.log("我是左"+"我是右");
console.log("1"+"2");
//结果为
我是左我是右
12
console.log("1"+"2");
console.log("1"+2);/console.logo(1+"2");
var a = 1;
var b = 2;
console.log(a+b);
console.log("a"+b);/console.logo(a+"b");
console.log("a"+"b")
//结果为
12
12/12
3
a2/1b
ab

这里的a(b)被引号引起来了;变成了字符串了;

var a = 1,b = 2,c = 3;
console.log("a"+a+b+"c"+c);
//结果为
a12c33

这里是从左往右算的;a+1变成了a1;a1再加上2就是变成了a12;相当于字符串加一个数字变成了字符串a12;

parseFloat浮点型

转换字符

string字符串转number数字类型

parseInt就是把string转为一个整数,不四舍五入,直接截取整数部分;如果这个string有乱七八糟的东西;那么直接截取前面数字部分;

var a = "123.15443";
console.log(parseInt(a));
//结果为123;舍去小数点后面全部,不进一;

parseFloat就是将字符串转为浮点数

尽可能的将一个字符串转为浮点数,浮点数之后如果有乱七八糟的内容,直接舍弃;

var a = "123.456.789";
var b = parseFloat(a);
console.log(b);
//结果为
123.456

但有特列,因为里面的字符串转化不了就成NaN不是一个数;

console.log(parseInt("有我这个算法必是NaN123"));
console.log(parseFloat("有我这个算法必是NaN123"));
//两个结果正是 NaN

这是把字符串转为数字类型输出;

var a = "123";
var b = parseInt(a); //把字符串123转化为了数字类型123
console.log(b);
console.log(typeof b)//检测类型
//结果为
123
number

有的老经验工程师为了方便;直接连写;

console.log(parseInt("123"));//123
console.log(parseInt("123.6"));//123
console.log(parseInt("123年了时间真快"));//123
console.log(parseInt("-123.2222468464"));//-123

计算机

//输入第一个数并直接变整数存入变量
var a = parseInt(prompt("请输入第一个数字"));
//输入第二个数并直接变整数存入变量
var b = parseInt(prompt("请输入第二个数字"));
//把前两个的值加一块存在一个变量里
var sum = a+b;
//输出总值
alert(sum);

等价于

//输入第一个数
var a = (prompt("请输入第一个数字");
//输入第二个数
var b = (prompt("请输入第二个数字");
//把前两个的值加一块存在一个变量里并直接变整数存入变量
var sum = parseInt(a)+parseInt(b);
//输出总值
alert(sum);

还有可以转化为进制;

parsrInt( 15 ,这里填进制);

全部转15;
console.log(parseInt(15,10));
console.log(parseInt(17,8));
console.log(parseInt(15,2));/console.logo(parseInt("0xf",16));
console.log(parseInt(1111,2));
console.log(parseInt(1,9));
console.log(parseInt("15e6",10));
console.log(parseInt("15*6",10));

如果parseInt不能转化;就会返回(输出)NaN

console.log("Hello world");
console.log("123",2);
console.log("三百六十五");
console.log("2019年了");
//结果全为 NaN

number数字类型转string字符串

将一个数字与一个空的字符串进行连字符运算,那么就是自动转为字符串了;

var a = 123;
var b = a+"";
console.log(b);
console.log(typeof b);
//结果为
123 //这里有空格,这其实是字符串,123 ;
string

等价于

var a = "我是上面的那个空格";
var b = 123;
var sum = a+b;
console.log(sum);
console.log(typeof sum)
//结果为
我是上面那个空格123
string

运算符

运算符叫做poerator,也可以叫做操作符;运算符有很多种,一元运算符,二元运算符,数学运算符,逻辑运算符。。。

加法 + 乘法 * 取余数 %

减法 - 除法 / 括号 ( )

console.log(20+5);//25
console.log(20-5);//15
console.log(20*5);//100
console.log(20/5);//4
console.log(20%5);//0
console.log((20+5)*(20/5);//100

默认的计算顺序,先乘除,再加减。乘除取余是平级,先遇见谁,就算谁;都是同级时,从左往右算;

%取余数;两个数相除得数余数就是所求的

console.log(12/5);
console.log(12%5);
console.log(15%5);
//结果
2...4//2是整数,4是未除尽的数也叫余数
4
0//因为15/5刚好除尽,余数为 0

%取余数,所要的结果就是,未出尽或出尽 剩下的数;

()小括号就是想要这几个数运算,但因为默认的计算顺序,恐怕不能如你所愿;

这个时候()小括号,用处就大了,它可以让你想要运算的先运算,再去算其它的;

console.log(5+4*2/4);//这是正常的默认顺序的计算方式
console.log((5+4)*2/4);//这是按你所想的计算方式,先计算加减,剩下的就听天由命
//结果
6
4.5

最重要的要来了,一定要记好

次方,如何计算次方;

3的4次方怎么计算;

Math.pow(3,4),小括号里前面那个数是个数,后面那个是前面那个数的次方;

Math.pow(2,5)就是2的5次方;Math.pow(6,2)就是6的2次方;

//Math.pow(3,4)
console.log(Math.pow(3,4));
//结果
81

Math 是一个内置对象,pow是它的一个方法;

有时候会有内嵌元素;

console.log(Math.pow(3,2+Math.pow(2,3)));
//结果
59049

这写的是3的2次方;2次方加2的3次方等于=10次方;变成了3的10次方;

Math.sqr();这个是开平方;

Math.sqr(81);
Math.sqr(25);
Math.sqr(16);
Math.sqr(49);
//开平方结果
9
5
4
7

原文地址:https://www.cnblogs.com/hanyongjunweb/p/12066171.html