JavaScript用来干什么

  1. 数据的验证
  2. 将动态的内容写入到网页当中(ajax)
  3. 对事件做出相应
  4. 读写html当中的内容
  5. 检测浏览器
  6. 创建cookies
  7. 模拟动画

语法特点

  • 基于对象和事件驱动的松散型的解释性语言
  1. 面向对象开发
  2. 事件驱动
  3. 松散型 弱类型
  4. 解释性语言。由浏览器解释执行

JavaScript的组成部分

  1. ECMAscript语法
  • 数据类型,运算符,流程控制,函数,面向对象
  1. BOM浏览器对象模型
  2. DOM文档对象模型

难点

  • 语法的松散自由型
  • 各个浏览器的兼容

调试工具

  • alert('这是一个弹窗');
  • document.write('输出到页面中');
  • document.write('
    我是h6

    ');

  • prompt("提示信息","显示框");
  • console.log("输出到控制台");

JavaScript引入方式

  • script标签对,嵌入到页面中任意位置
  • 超链接或者是重定向的位置

    <a href="javascript:alert('重定向')">我是重定向</a>
  • 事件后面

    <div onclick="alert('事件后面')">这是事件</div>
  • 引入外部js文件

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

js可以在页面中的任意位置引入,他们是一个整体可以相互联系,相互影响;在引入外部js文件中,不能出现<script></script>,在页面<script src=""></script>标签中不能出现js代码

JavaScript的命名规范

  • 严格区分大小写
  • 变量由数字,字母,下划线,$组成,不允许数字开头
  • 不能用关键字或保留字命名
  • 命名习惯 驼峰命名法 首字母大写
  • 命名要有一定意义
  • ;语句结束

变量的声明及赋值

  • 先声明后赋值
  • var a;a=1
  • 声明同时进行赋值
  • var a=1;
  • 一次声明多个变量,然后赋值
  • var a,b,c; a=1;b=2;c=3
  • 一次性声明多个变量的同时赋值
  • var a=1,b=2,c=3;

栈区(内存小运行快) 堆区(内存大运行慢) 静态区 代码段

0开头的数字(8进制)

数据类型(2种)

  • typeof()检测数据类型,返回值是字符串

初始数据类型:

  • undefind

    变量声明后没有赋值,默认值undefined
  • null

    typeof的结果是object,表示什么都没有,占位符
  • boolean

    true false 结果是boolean
  • number

    整型,浮点型;二进制,八进制,十六进制,十进制,科学计数法,特殊值

    Number.MAX_VALUE 最大值,

    Number.MIN_VALUE 最小值。
  • string

    '' ""包围的值,就是一个字符串

单双引号效率一样;单双引号成对出现;可以相互嵌套,不能交叉嵌套;特殊字符\b \n \t \r \'' \"" \\ \

引用数据类型

  • object

运算符

 表达式:运算符和操作数的组合成为表达式

算术运算符(1)

+ - * / %(取余) var++(先运行后自增) ++var(先自增后运行) var-- --var

10%3 余数为1

  • %
  • 用来取某个数的余数
  • 用于取一定范围的值
  • 一般不用小数,因为结果不确定
    • 四则运算
    • 字符串连接,任意的数据类型都可以和字符串连接,连接之后结果是字符串。

    12.27

    关系运算符(比较运算符)(2)

    < > <= >= == === != !==

    运算结果是布尔值

    == 比较两个数的值是否相等 =不但要比较值是否相等,还比较类型是否相等 false0 true==1

    比较规则

    • 两个数值比较,正常比较
    • 两个字符串进行比较时,比较第一个字符所对应的ASCll
    • 数字和字符串在进行比较时,字符串尝试转换成数字进行比较,如果转换不成功返回NAN,整个表达式返回false
    • undefined==null
    • 数值和布尔值进行比较时,布尔值转化为true,1 false,0

    赋值运算符(3)

    = += -= *= /= %=

    a++ a=a+1 a+=1

    逻辑运算符(4)

    与and&& 或or|| 非not!

    &&

    同时为真,结果为真。只要有一个为假,结果就为假

    • ||

    只要有一个为真,结果为真。全假,结果为假

    取反。真-->假 假-->真

    • 逻辑运算符可以对任何类型的数据进行运算但是在运算的

      时候,可以转换为对应的布尔值 Boolean
    • Undefined false
    • Null false
    • Boolean 就是本身的值
    • Number 除了0以外都是真的
    • String 除了空字符串以外都是真的
    • 对象 真的

    一元运算符(5)

    typeof +(正) -(负) delete new ++ --

    • typeof()获取数据类型
    • delete删除对象的方法或属性
    • new用来创建一个对象

    三元运算符(6)

    格式:var 变量=布尔值?条件为真的值:条件为假的值

    根据表达式的计算结果有条件的为变量赋值

    特殊运算符(7)

    • , ()
    • 用来一次声明多个变量
    • ()
    • 在运算的时候有优先级的作用
    • 可以让函数运行

    Javascript用途,语法特点,难点,调试工具,引入方式,命名规范,变量声明及赋值,数据类型,运算符的更多相关文章

    1. javascript 变量 命名规范 变量的作用域

      原文:javascript 变量 命名规范 变量的作用域 大家好,我是小强老师,今天讲解的是变量 变量 小时候我们学过  这个 应用题 :  X+1=2; 问  X 等于几?  答案是 1 对了,很聪 ...

    2. JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}

      Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...

    3. JavaScript变量声明及赋值

      1.变量声明 var a; //声明一个变量 a var b,c,d; //同时申明多个变量时,变量名之间用逗号隔开 console.log(a); //在控制台显示变量a的值,输出为undefine ...

    4. CSS最基础的语法和三种引入方式

      **CSS语法** CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明.选择器通常是您需要改变样式的 HTML 元素. selector {declaration1; declaration ...

    5. Python 语法特点:注释/编写规则/命名规范

      1.注释 1)单行注释     # 2) 多行注释   前后三个单引号或双引号   ‘’‘  ...  '''    """  ...""" ...

    6. JavaScript基础语法资料

      JavaScript基础第01天 1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的 ...

    7. python 全栈开发,Day50(Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏)

      一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...

    8. 前端JavaScript(1) --Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏

      一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...

    9. {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性  定位(position)z-index

      前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...

    随机推荐

    1. 求eclipse中的java build path 详解

      我也找了一下资料,但未找到相关的正式说明,我只能凭经验告诉你. 1,Source是指资源的路径.例如在没有包含res之前,资源是放在与src同级位置,或者通过/res/*.*来操作的.2,Projec ...

    2. jquery实现单击div切换背景

      <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

    3. poj 3528 Ultimate Weapon (3D Convex Hull)

      3528 -- Ultimate Weapon 一道三维凸包的题目,题目要求求出三维凸包的表面积.看懂了网上的三维凸包的代码以后,自己写的代码,跟网上的模板有所不同.调了一个晚上,结果发现错的只是数组 ...

    4. SCSS语法格式及编译调试

      一.SASS编译 Sass 的编译有多种方法: 命令编译 GUI工具编译 自动化编译 1.1 命令编译 1)单文件编译 sass <要编译的Sass文件路径>/style.scss:< ...

    5. asp.net MVC 模板定制

      模板存放位置:C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC ...

    6. 使用基于Apache Spark的随机森林方法预测贷款风险

      使用基于Apache Spark的随机森林方法预测贷款风险   原文:Predicting Loan Credit Risk using Apache Spark Machine Learning R ...

    7. 5分钟了解为什么学习Go

      1.什么是Go语言? Google开源 编译型语言 21世纪的C语言(主流编程语言都是单线程环境下发布的) 2.Go语言的特点? 简单易学习(类似python学习难度,自带格式化) 开发效率高 执行性 ...

    8. 如何用简单易懂的例子解释条件随机场(CRF)模型?它和HMM有什么区别?

      https://www.zhihu.com/question/35866596/answer/418341940

    9. Java自动生成testcase

      package com.citi.sl.tlc.services.tlc.collateralDataProcess.util; import java.io.BufferedWriter; impo ...

    10. [转]爬虫 selenium + phantomjs / chrome

      目录 selenium 模块 安装 phantomjs 浏览器 安装 chromedriver 接口 安装 对比两个接口 整合使用 基本实例 常用属性方法 定位节点 节点操作 其他操作 实例解析 - ...