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. @51nod - 1196/1197/1198@ 字符串的数量

      目录 @description@ @solution@ @part - 1@ @part - 2@ @part - 3@ @accepted code@ @details@ @description@ ...

    2. wamp环境搭建(Apache2.4.34+PHP7.2.7+MySQL5.5.60)

      1 添加环境变量 1.1 添加Apache bin目录 1.2 添加PHP目录 2 配置Apache 2.1 修改conf/httpd.conf 将第38行SRVROOT值修改为当前Apache文件夹 ...

    3. 只要是使用函数file_get_contents访问 https 的网站都要开启

      使用file_get_contents();报错failed to open stream: Unable to find the socket transport "ssl" - ...

    4. HTML5有哪些新特性?移除了哪些元素?

      HTML5新特性: 拖放(Drag and drop)API 语义化标签(header.nav.footer.section.article.aside) 音频.视频(audio.video)API ...

    5. poj 3335 Rotating Scoreboard (Half Plane Intersection)

      3335 -- Rotating Scoreboard 给出一个多边形,要求判断它的内核是否存在. 还是半平面交的题,在这道题中,公告板允许其所在位置与直线共线也算是可见,于是我们就可以将每一条直线微 ...

    6. SuperSocket主动从服务器端推送数据到客户端

      关键字: 主动推送, 推送数据, 客户端推送, 获取Session, 发送数据, 回话快照 通过Session对象发送数据到客户端   前面已经说过,AppSession 代表了一个逻辑的 socke ...

    7. 【t079】火星上的加法运算

      Time Limit: 1 second Memory Limit: 128 MB [问题描述] 最近欢欢看到一本有关火星的书籍,其中她被一个加法运算所困惑,由于她的运算水平有限,想向你求助,作为一名 ...

    8. poj 1920 Towers of Hanoi

      Towers of Hanoi Time Limit: 3000MS   Memory Limit: 16000K Total Submissions: 2213   Accepted: 986 Ca ...

    9. IDEA中安装activiti并使用

      1.IDEA中本身不带activiti,需要自己安装下载. 打开IDEA中File列表下的Settings 输入actiBPM,然后点击下面的Search...搜索 点击Install 下载 下载结束 ...

    10. POJ 2488 深搜dfs、

      题意:模拟国际象棋中马的走棋方式,其实和中国象棋的马走的方式其实是一样的,马可以从给定的方格棋盘中任意点开始,问是否能遍历全部格子,能的话输出字典序最小的走棋方式,否则输出impossible 思路: ...