一,JavaScript的历史

是由于以前的网景公司(Netscape)【创建过第一个浏览器 nn浏览器】的员工:布兰登·艾奇 用了10个工作日的时间,设计出来的一门语音,原名叫LiveScript。因为当时的程序员很崇拜java这一门语言,为此在网景公司在发布的时候,将之改名为 JavaScript;也有一种原因是想要利用java这一个因特网的时髦词汇,将JavaScript推上热门。

JavaScript原本的创造出来的用意是为了解决网络上传输速度特别慢的问题。

二,JavaScript的组成

有三部分组成

  • ECMAScript (欧洲计算机制造商协会)  确定了语法标准
  • DOM   操作html文档的标准      document文档
  • BOM   操作浏览器的标准         browser浏览器

三,javascript的概念

支持面向对象的跨平台脚本语言,且必须依赖于html才能在浏览器上运行

四,javascript的应用场景

  1. 表单验证:规范用户输入数据,和后台数据进行交互
  2. 网页特效:给网页内容加行为,让1网页动起来
  3. 游戏开发:飞机大战,打砖块
  4. 物联网   JavaScript与物联网 - 知乎

五,js和h5的关系

  1. 广义上:大前端主要技术包含:html+css+html5+css3+JavaScript+前端框架(vue+react+angular)+app+小程序+...
  2. 狭义上:h5表示为html的第五个版本,h5的新增的标签,有一些标签的强大之处需要js支撑

六,js的书写

1.写在html标签中,以一个script双标签来表现的

2.三种写法

(1)行内:一般在标签中使用

(2)内联:一般用于学习的时候使用

使用方法:script标签中写js代码

(3).外联:一般用于写项目的时候

运用script的src属性引入外部js文件

script标签引用时外联和内联只能二选一,一般可以将script写在body结束的位置

七,js的注释

1.单行注释

ctrl + /

2.多行注释

/*  */

设置/键盘快捷方式/切换块注释

shit + alt + ↓  实现将当前行复制到下一行
ctrl + d   将跟当前相同的内容一起选中
ctrl + x  将当前行剪切

八,js的输出方式

1.alert()         弹窗          给用户做提示

2.document.write()        写在body中

3.confirm()        询问用户是否继续操作(比如删除时,退出时)

4.prompt()        让用户输入的弹窗

5.console.log()        显示在控制台        调试代码

九,js的变量

1.概念:存储数据的容器,并且值是可变的

2.定义:

var 变量名,变量名

3.变量名称的要求:

由字母,数字,下划线,美元符号组成,

但不能用数字开头

不能使用关键字

一些关键字

3.赋值

var 变量名=值

= 为赋值符,左边一定是变量,右边一定是值,

作用就是将右边的值放在左边的变量中

十,js的数据类型

检测数据类型 :typeof

1.number数字类型

NaN:not a number 字母首拼  含义:不是一个具体的数字,数据类型为number

isNaN()  用来检测数据是否是数字,

true不是数字,flase是数字;

小数计算不精准

解决方法:

1.扩大10的倍数,然后运算在缩小10的倍数

2.数字.toFixed(位数)         结果是字符串

表示取小数点后的几位数字。

可以在最后用【*1 或者 /1 或者 -0】来把值转为number类型

2.string字符串类型

  • 引号不能嵌套自己,除非用转义符:  \
  • document.write可以输出标签,一定要标签当做字符串放在document.write中
  • 字符串和字符串之间使用  +  可以进行拼接
    • + 左右两边只要一个是字符串,就会把 +  变成拼接的意思

3.boolean布尔类型

1。true 表示为真

2。flase 表示为假

4.undefined未定义类型

定义了变量,但是没有赋值时,值是undefined,类型也是undefined

5.object对象类型

null         空

{}

[]

十一,js中的运算

1.算数运算         +   -   *   /   %

2.比较运算        >   <   >  =   <=   ==   ===   !=   !===

3.赋值运算        +=       -=       *=       /=       %=

4.逻辑运算        &&        ||        !

5.自增自减

++        让自己自增1

--         让自己自减1

特点:

当自己进行自增自减的时候,符号放在前面放后面没区别

当符号碰到赋值的赋值,运算,输出的时候,

如果符号放在前面就先自增自减

放后面就后自增自减

十二,类型转换

在数据类型中,某些场景下,需要将类型转换成另外一种类型才能完成

转化后类型为:number string boolean

被转化的类型:number string boolean null underfined

(一),转成number

1.强制转换:利用js系统提供的工具来转换

总结:

Number()

空字符串转成0

数字字符串转成数字

true转成1

false转成0

null转成0

其他都是NaN

parseInt()

字符串开头有整数,取到整数

其他都是NaN

parseFloat()

字符串开头有数字-带小数点 - 取到前面的这个数字

其他都是NaN

(1)。Number()

  • // 将字符串转成number
    var str = '11';
    var num = Number(str);
    console.log(num);
  • // 数字字符串可以转成具体数字,空字符串可以转成0,其他字符串都是NaN
    var str = ''
    var num = Number(str)
    console.log(num)

  • // 将boolean转成number
    //        true 为 1 ,false 为 0 ;
    var bool = false
    var num = Number(bool)
    console.log(num);

  • // 将null转成数字  ----------- 0
    var a = null
    var num =Number(a)
    console.log(num);
  • // undefined 转数字   --------   NaN
    var a
    var num = Number(a)
    console.log(num);

(2)。parseInt()

只有开头有整数的字符串能转成具体的数字,其他数据都是NaN

  • // 字符串转数字 -结果是 从前到后找到的第一个整数
    var str1='11.88'
    var str2='dwnj11.88'
    var str3='11.84dafff'
    console.log(parseInt(str1))
    console.log(parseInt(str2))
    console.log(parseInt(str3))

  • // boolean 转成数字 ------  NaN
    var bool = false
    var num = parseInt(bool)
    console.log(num);
  • // null 转为 数字 ------ NaNvar a = null
    var num = parseInt(a)
    console.log(num);
  • // undefined(未定义样式) 转化为  数字 -------  NaN
    var a
    var num = parseInt(a)
    console.log(num);

(3)。parseFloat()

  • // 字符串转数字  -- 从前往后截取数字  ----- 可带小数
    var str1='11.88'
    var str2='dwnj11.88'
    var str3='11.84dafff'
    console.log(parseFloat(str1))
    console.log(parseFloat(str2))
    console.log(parseFloat(str3))

  • // 其他数据转成数字 ------ NaN
    var bool
    var num = parseFloat(bool)
    console.log(num);

2.隐形转换:没有使用工具,利用的是运算

数字运算         比较运算

(1)字符串转数字

// 当字符串碰到数字运算(除了加分)的时候,会直接转为数字,进行数学运算
var a = 10
var b = '5'
var c = a - b
alert(c) ----------- 5
// 当字符串跟数字进行比较运算的时候,
// 只要左右两边有一个是数字,两一个也会转为数字进形大小比较
var a = 10
var b = '5'
var result = a > b
alert(result); ------------  true

(2)。布尔转数字

var a = 2 + true
alert(a);      // 3var result = 2 > true
alert(result);    // true 

(二),转成string

总结:

强制:

String()

数据.toString()

隐形:

+号一边是字符串,另一半就会转成字符串

1。强制转换

(1)。String()

var num = true
var str = String(num)
console.log(str)
console.log(typeof(str))   // string

(2)。数据.toString()

var num = true
var str = num.toString()
console.log(str)
console.log(typeof(str))   // string

2.隐性转换

// + 号左右两边有一个是字符串,另外一个也会跟着转成字符串,然后进行拼接
var num = 20
var result = num + '11'
console.log(result) // 2011
console.log(typeof(result)) //string

(三),转成布尔

总结

转布尔后的值为 false 的有 : 0 空字符串 undefined null

其他数据都是 true

强制转换      --------     Boolean()

// 数字转布尔  -  0 转成 false ,其他都是 true
var num = 0
var bool = Boolean(num)
console.log(bool) ;
// 字符串转布尔 - 空字符串转成false 其他都是true
var str = ''
var bool = Boolean(str)
console.log(bool);
// undefined 转布尔  ------ false
var a
var bool = Boolean(a)
console.log(bool);
// null 转布尔   ------ false
var a = null
var bool = Boolean(a)
console.log(bool);

十三,进制间的转换

(1),16进制的FF 转为 10进制

(2),2进制的11011转为10进制

(3),10进制的11转为2进制 ------ 反向取余数

一,JavaScript基本语法相关推荐

  1. javascript基础语法——表达式

    前面的话 一般地,关于javascript基础语法,人们听得比较多的术语是操作符和语句.但是,其实还有一个术语经常使用,却很少被提到,这就是javascript表达式(expression).本文将详 ...

  2. VS集成环境中的JavaScript脚本语法检查

    集成在Visual Studio环境中的JavaScript脚本语法检查. 1.可以直接检验js文件,也可以检验html和aspx页面上的脚本语法. 2.集成环境中直接使用,双击定位到语法错误处. 3 ...

  3. javascript基础语法——词法结构

    前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫:而说它复杂,是因为要真正掌握它则需要数年时间.实际上,前端工程师很大程度上就是指javasc ...

  4. 谈一下JavaScript的语法

    JavaScript是一门很优美的语言,今天我们谈一下JavaScript的语法! 首先我们说一下变量,变量对于没有编程基础的朋友来说可以理解为一个空的盒子,我们首先为这个盒子取一个名字 'box' ...

  5. JavaScript基本语法(续)

    JavaScript基本语法续 文章目录 JavaScript基本语法续 一.Javascript组成 二.字符串处理方法 1.字符串合并操作:" + " 2.parseInt() ...

  6. web前端学习:1分钟了解JavaScript基础语法规则

    俗话说,"无规矩不成方圆".用在计算机语言上也同样使用.每种计算机语言都有自己的语法规则,只有遵循语法规则才能写出符合要求的代码.JavaScript也不例外,在使用JavaScr ...

  7. 基于正则表达式的JavaScript/C++语法高亮(js版)

    JavaScript的语法高亮一直是个难点,因为需要语义分析以确定/是除法操作的开始还是正则表达式的开始.目前关于高亮js的语法高亮都不是很理想,尤其是syntaxhighlighter(你待会看到的 ...

  8. JavaScript|JavaScript 高级语法——详细汇总

    JavaScript 高级语法 目录 JavaScript 高级语法 一.变量提升和函数提升 作用域的概念 1. 变量提升 ① 变量提升 ② 变量提升后,与外界同名变量不会相互影响 ③ 多次声明变量 ...

  9. vue|JavaScript let语法

    vue|JavaScript   let语法 let 语句声明一个块级作用域的本地变量,并且可选的将其初始化为一个值. 语法 <span style="color:#333333&qu ...

  10. JavaScript的语法解析与抽象语法树

    抽象语法树(Abstract Syntax Tree)也称为AST语法树,指的是源代码语法所对应的树状结构.也就是说,对于一种具体编程语言下的源代码,通过构建语法树的形式将源代码中的语句映射到树中的每 ...

最新文章

  1. 团体程序设计天梯赛-练习集-L1-044. 稳赢
  2. ASP.NET图形化的曲线图类
  3. 华为手机怎么隐藏按键图标_华为手机8个隐藏功能,快来看看有没有你不知道的...
  4. 卷积神经网络VGG16权重数量的计算和理解(转载)
  5. Taro+react开发(53) Taro提示操作
  6. iOS HTML标签字符实体,转译字符串归类大全 【转载】
  7. Image Warp插件实现图片点击扩大渐隐效果
  8. ios开发 多人语音聊天_iOS 新手集成单聊、群聊、语音和视频通话的简述
  9. 举例让抽象问题具体化:二叉搜索树的后序遍历序列
  10. 我们想赚钱,首先要帮助我们的团队,让他们提升能力让他们赚到钱
  11. 数据库课程设计(实训)
  12. 美容院店务管理系统哪家好?
  13. EXCEL中汉字转变拼音的技巧~代码实现
  14. ai画面怎么调大小_AI页面面板中如何调尺寸
  15. Spring Boot 核心注解?主要由哪几个注解组成?
  16. java多线程 isAlive方法的有趣现象
  17. 如何提高项目估算精准度 关键有3方面
  18. 如何抓包分析BLE 空口报文(GAP + GATT + LESC procedure)?
  19. 机器学习笔记(三)—— 二向箔(从PCA到SVD)
  20. java基础巩固-宇宙第一AiYWM:为了维持生计,架构知识+分布式微服务+高并发高可用高性能知识序幕就此拉开(一:总览篇)~整起

热门文章

  1. JS学习笔记17-面向对象编程-原型
  2. Nwafu-OJ-1421 Problem S C语言实习题四——4.数据顺序调整
  3. 自动控制原理——绪论
  4. SSCOM串口调试助手自定义波特率
  5. 浅尝辄止SCOI2018反思
  6. Java生成随机数、随机种子
  7. python 进行音频处理,单声道变双声道,提升音量
  8. LoRa Server@Windows:一键安装
  9. 计算机科学phd,纽约大学计算机科学phd
  10. 第一章(简述数据清洗的基本流程)