javascript系列-1.JavaScript基础

JavaScript概述

一个页面分为三个部分,结构,样式,行为。

HTML就代表了页面的结构(骨架),CSS代表了页面的样式(皮肤),JavaScript代表了页面的行为(这种行为是被动的),主动的行为需要一个大脑,后端作为我们的大脑替我们分析执行数据,执行行为,我们和大脑之间的联系是AJAX(中枢神经)。这就是我们要学习的内容。

1、Javascript是什么,他能做什么?

对页面进行渲染,让页面有行为,让页面动起来。

Javascript 是一门既简单又复杂的语言,说它简单是因为学会它,几乎只要一个小时就可以了。但是如果你想要真正掌握它,需要几年的时间。

JavaScript的组成

ECMAScript 、BOM 、DOM;

 

ECMAScript:这是一个标准,它规定了语法、类型、语句、关键字、保留字、操作符、对象。(相当于法律 

BOM(浏览器对象模型):可以访问浏览器窗口的的浏览器对象模型,对浏览器窗口进行操作。

DOM(文档对象模型):DOM把整个页面映射为一个多层节点结构。HTML页面组成都是某种类型的节点,这些节点又包含着不同类型的数据。

如何写Javascript程序?

<script>标签的使用

 

<script>
         
 //在标签内书写内容     
     
</script>
<script src='javascript.js'>// 这里面不能写任何内容</script>

一切准备就绪,让我们从Hello Word开始吧。

document.write("HelloWord");原样输出标签。

注释 :

单行注释: // 注释内容。

多行注释:/* 注释内容写在这里 */ 

原样输出标签内容

如果我想在页面中打印出:<strong>标签怎么办?

如果按照正常的打印方式进行打印,毫无疑问,标签会被浏览器解析。当我们要打印标签的时候要对对标签进行转义。    

&lt  代表 < 

&gt 代表 >

document.write('&lt;strong&gt;强大的</strong>');

变量(别称)

 

  他叫翠花,他是一只熊。
 
     熊的底层是什么那? 熊皮、熊掌、熊骨....,  那我们每次呼叫这只熊的时候都要叫她什么?有一张熊皮,500公斤熊肉,第三块小脚趾骨断过的,那个玩意?
 
     不!我们叫她翠花!这就是这只熊的别称!放在计算机里,这就是把这只熊塞入了一个叫做翠花的变量里。
 
     怎么声明一个变量那?
 
    关键字 var 变量名 a = '<strong>强壮的</strong>'
 
     var 声明变量的底层原理:我们所写的程序运行在内存中,当我们使用关键字var 声明一个变量的时候,计算机会从内存中留出一定储存空间,为我们存放不同类型的内容。
 
     分清左右两侧的意义:
 
     JavaScript中的 ‘’=‘’ 和我们数学中的 ‘’ = ‘’不一样,在JavaScript中‘’=‘’的作用是赋值(取别称)。 
       
     var '<strong></strong>';  这句话分成两个部分。
    
     左值:在等号左侧,是变量名(同时被赋值)
     
     右值 :在等号右侧,是存放进变量中的东西(给变量赋值)
 
     变量的类型(因为存放进变量中的数据是放在内存中的,计算机只识别0,1,所以需要对不同类型的数据进行转义,转义的结果会导致所需空间不同,所以JavaScript中分成很多种数据类型,以便计算机储存时使用)
 
     数字类型(number):1234567890
 
     字符类型(string):'123456','字符串类型',.....(有单引号或者双引号)
 
     未定义类型(undefined):这是一种特殊类型,当变量被声明但是没有被赋值的时候,那么该变量的类型为undefined;
 
     布尔值类型:true,false;
 
     对象类型:object;
 
    怎样直观地区分不同的数据类型那?
 
     一个关键字 typeof
     
     变量使用小技巧: 声明一串变量:var a=1,b=2,c=3;(不推荐初学者使用这样的变量声明方式,因为这样的变量声明方式会导致注释不明确。)
 
     变量命名规范:(匈牙利命名法:驼峰命名法)
 
     为什么要存在命名规范那?
 
     你的代码并不是只有你一个人看,变量既然是别称,那么别称就要有特殊的含义:
 
     举个栗子:翠花,我们能从这个名字中得到什么信息那?(这个名字的主人性别应该是女的,家中父母的一个美好愿景);
     
     那么钢蛋那?
 
     我们从这些名字中能够读出很多的含义,是因为我们的语言常识,同样,变量也有一套类似的标准,代表了各种各样的含义,这些含义如下:
     
 第二个规则:
 
     开头必须为字母或者$ 或 _
 
想要用break作为变量可不可以那?
 
     关键字:
 
这些关键字用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符。
 
break
do
instanceof
typeof
case
else
new
var
catch
finally
return
void
continue
for
switch
while
debugger*
function
this
with
default
if
throw
delete
in
try
 
 
 
保留字:未来可能作为,标识符存在。
 
abstract
enum
int
short
boolean
export
interface
static
byte
extends
long
super
char
final
native
synchronized
class
float
package
throws
const
goto
private
transient
debugger
implements
protected
volatile
double
import
public
 
 
 
     alert()方法
 
     alert()使用 。 停止浏览器加载代码。
 
     浏览器解析代码顺序。(从上到下,从左到右);
 
     逻辑运算符:
 
     var a=1,b=2;
 
    a+b=3 
 
    a - b=-1 
 
    a * b=2
 
    a / b=0.5
 
     a % b=1
 
    
        var  a='1', b='2';
 
                          a * b=2 ;
 
a / b=2;
 
a - b=-1;
 
a + b =???
     
不同:和我们概念里的逻辑运算符很多都是不一样的。
 
 +   =   ==  ===  这些都不一样。
 
避免问题出现(一眼就看出来了):
 
让计算机告诉我:typeof 关键字;(数据类型的检测,意义在于确认是否能够被使用);
 
编程习惯分号,虽然不加分号在JavaScript语法上没有问题,但是建议不要省略分号,加了分号之后可以用软件压缩。良好的变成习惯(JavaScript权威指南)上的理由。
 
 
浮点数:
 
        你的电脑做着正确的二进制浮点运算,但问题是你输入的是十进制的数,电脑以二进制运算,这两者并不是总是转化那么好的,有时候会得到正确的结果,但有时候就不那么幸运了;
 
alert(0.7+0.1); //输出0.7999999999999999
 
alert(0.6+0.2); //输出0.8;
 
类型转换:
 
           var a=3,b='10',c=true;
 
        alert(a+b);
 
        alert(b+c);
 
        alert(a+c);
 
 
       运算结果好像并不是我们想要的:应该怎么办那?当我们想做数学运算的时候,应该先对所有的数据类型进行统一(统一成数字格式),这时候我们就该用到数据类型的转换。
 
     数据类型转换方法:
 
     parseInt();
 
     parseFloat();
 
我们尝试一下数据转换的结果:
 
认识NaN:他是一种特殊的Number类型结果,代表意外转换的数字,NaN和任何东西都是不等的。
 
关于浮点数:Math.round()四舍五入取整浮点数。
    
赋值操作:(JavaScript中存在非常多的简写)
 
 var a=1;
 
 a=a+1;
 
 a+=1;
 
 alert(a)
 
这些当然还包括 -= 、*=、/=、%=
 
这些赋值操作符的结果都是什么?
 
一个更简便的写法 a++ ; a - -;
 
++a  和 - -a 有什么不同;(思考) 
 
var a = 5 + 4;  
var b = a * 2; 
var c = b / 4;
var d = b - c;
var e = -d; 
var f = e % 4;
 
f的结果是什么?
 
var g = 18.4; 
var h = g % 4;
 
h的结果是什么?
 
var i=3; 
var j=i++;  
j的结果是什么?
 
 

 

 

 

 

 

posted @ 2020-09-29 16:56  以深  阅读(69)  评论(0编辑  收藏  举报
TOP