首页 > 代码库 > 关于js的一些基础随笔

关于js的一些基础随笔

JS基础

01、 js

 

API:别人准备好的东西,我们负责使用。

能够独立写出所有代码。

五天之后说有代码从新写一遍。

十天过后提问。

问题用red标出

02、 js分为三部分、语法、注释(总结)、异步以及同步(简单介绍)、交换两个变量量的值、

命名规范必须遵守、类型转换、运算符、流程控制。

重点

03、 快捷键

 等待添加

04、 浏览器

五大浏览器:chrome、firefox、safari、ie(*)、opera。

浏览器兼容问题(important)

测试只测试这五个(chrome、firefox、ie是重点)。

 

解析器专门解析代码的。

 

浏览器有存储数据的能力。保存数据是会删除的。

浏览器有负责联通网络的功能。

浏览器里所有的东西都是画出来的。

 

05、 JS组成及特点

  1. 组成

三部分ECMAScript-基本的语法对象(语法以及基本对象)

DOM:document object model 文档对象模型(内容的方法和接口)

BOM:broswer object model 浏览器对象模型(交互的方法和接口)

  1. Js是一门脚本(代码不需要编译(把代码转换成计算机所认知的二进制)直接执行、边解析一边执行的)、弱类、动态类型、解释性语言。

Int num=10;  double num2=20.9;强制类型语言。

Var num=10;弱类型语言。

动态类型:认知当前的这个变量到底是什么类型。

 

 

跨平台性。

 

 

可以直接镶嵌到html中。

JS----livescript

JS与JAVA无关系

正式名称ECMAScript

06、 最初目的:解决浏览器与服务器的交互问题(例如:验证密码)

现在:特效、游戏、移动开发。

07、 HTML作用展示信息。

Css是美化页面。

JS实现浏览器和服务器交互,有计算和交互的能力。

08、 可以直接在记事本直接写。

JS点出来的东西未必能用,点不出来的东西或许可用。(对象)

动态语言:在运行时确定类型。

09、 注意事项:

  1、 声明变量有大小写之分

  2、 弱类型语言声明变量都用var

  3、 字符串用单引号或者双引号(JS中的单双引号都表示字符串。推荐用双引号。和DOM结合的时候用单引号)

  4、 每行代码结束用分号

10、 注释 单行注释//

多行注释/**/

HTML <!---->

css /**/

11、 JS的代码:在script标签中写,可以写在html页面的任何位置,一般放在body标签里面。提升用户体验(script在页面中可以存在多对。)

12、 Script使用

  1. 内联,嵌入在html标签中
  2. 内部引用,在页面中写js代码
  3. 外部引用,<script src=http://www.mamicode.com/”..”>

13、 如果在script标签中代码出错了,或影响该对的代码执行,不会影响后面的代码执行。

不要在引入外部的JS中写代码。

内联样式不易于开发。

14、 异步以及同步

同步:一个人有顺序的做多个事(一行一行去显示)

异步:多个人做多件事  async (一面加载就开始下载文件,下载完毕后立刻执行执行与下载一起)  defer (全下载完在执行) 他们属性的值就是自己,一般在html中如果属性的值就是自己,值可以省略。

 H5中可以省略写type=“javascript”

15、 变量交换(3种)

  1、 第三方变量的方式

 

var num1=10;

var num2=20;

var temp=num1;

num1=num2;

num2=temp;

console.log(num1,num2);

  2、使用减法

var num1=10;

var num2=20;

num1=num1+num2;

num2=num1-num2;

num1=num1-num2;

console.log(num1,num2);

  3、位运算

var num1=10;

var num2=20;

num1=num1^num2;

num2=num1^num2;

num1=num1^num2;

console.log(num1.num2);

不同为一相同为零

16、 变量名的规范(必须遵守)

有字幕下划线或者$开头,中间包含字母、下划线、$、数字组成。(尽量不要以$开头)

变量名要有意义,最好用单词,如果单词不会用拼音,千万不要用简写。

变量名都是小写的,多个单词组合用驼峰法。

识别变量声明是否正确:变量声明可以一次声明多个。先声明后赋值也是合法的。

                                     变量的初始化:声明变量在赋值。

17、 数据类型:js当中的原始数据类型“Number,String,Boolean,Null,undefined,Object”

Null和undefined只有一个值就是他们本身,

Boollen:true 和false  1或者0  真或者借var sex=1;//男  var sex=0;//女

 

未定义时或者没有明确的返回值,变量的值为undefined。

显示变量的类型:typeof 变量名  typeof(变量名)

 

如果想要使用变量,最好先判断这个变量的类型是不是null或undefined

typeof输出的是字符串。

Number类型:如果一个变量的值  8/10/16进制(16进制有字母0xa)020(0开头代表八进制)

不要用小数验证小数。

Js有最大值最小值

 

 

String:可以用单双引号。字符串有不可变性。(讲字符串对象的时候配合堆内存空间讲解)  string.length字符串长度(空格也算个长度)(\想显示出来可以加一个\变为\\   \t代表对齐,有四个空格的位置。显示不出来。)

18、 转译符

 

19、 字符串拼接(str1+str2)(一个字符串加一个数字也是拼接、一个数字减一个字符串(里面是数字)为数字)。

20、 Boolean类型

Ture 和 False

console.log(Boolean());

数字非0转boolean为true,0为FALSE

非空字符串转boolean为true,空字符串为false,空格为true

Underfined和null也为false

对象也为true。

       流程控制语句用boolean类型

当一个变量没有赋值(undefined)(当一个变量声明了没有初始化)boolean为false

21、 数据类型转换(需要这种值需要转换)

  1、 其他类型转数字类型

Number(变量) 只认数字,并去掉前面的0。

parseInt(变量)数字开头可以转换(变为整数)。非数字为NaN  true为NaN。

parseFloat(变量)同上,自动把前面的0去掉。

小数转整数不要干,容易丢失数据。

  2、 其他类型转字符串类型

为了拼接显示输出

变量.toString();

String(变量);用这个

Null也不可以用第一种方式转换为字符串,但第二种方式可以。

Undefinded无法转换字符串。

 

      3、 其他类型转Boolean类型

22、 算数运算符+-*/%

首先是一个表达式,由算数运算符连接起来的表达式

一元运算符++  --  num++ ++num由一元运算符连接起来的表达式(只有一个操作数就可以运算)

var num=10;

var num2=num1++ +10;(后++,先运算后加1////先++,先加1后运算)

 

 

二元运算符:由二元运算符连接起来的表达式

三元运算符: 。。。?。。。 :。。。

什么表达式就是用什么运算符链接起来的表达式

23、 复合运算符

var num=10;

num+=5;    num%=3

console.log(num);

24、 比较运算符<><=>= == === != !==

比较运算表达式的结果是布尔类型

25、 逻辑运算符&&  ||  !如果用了逻辑运算符则为布尔类型

逻辑运算表达式(可以掺杂比较运算表达式)的结果是布尔类型

&&属于短路操作,如果前面的表达式为false则直接为false

结果为object

26、 运算符的优先级

 

27、 流程控制(控制代码执行的顺序)三种基本结构

  1、 顺序结构:从上到下,从左到右(从右到左)

  2、 分支结构if、if-else 、switch-case、三元表达式

  A、If语句(执行过程:先判断表达式的结果是true还是false,如果是true则执行里面的代码,否则执行后面的内容)

  B、If-else(if(表达式){

  代码1

  }else{

  代码2

  }如果为true则执行代码1,否则为代码2)

  C、三元表达式(表达式1?表达式2:表达式3;)

 

  D、if-else if(if-else可以有多个)  

 

28、 注释

单行注释一般在一行上面就可以

多行注释一般是函数、方法、构造函数上使用

关于js的一些基础随笔