[js学习] javaScript学习

JavaScript学习day1

什么是JavaScript

  • JavaScript是一种运行在客户端的脚本语言
  • 脚本语言:不需要编译,运行过程中由js解释器逐行来进行解释并执行
  • 现在也可以基于Node,js技术进行服务器端编程

浏览器执行js

浏览器分成两部分:渲染引擎和js引擎

  • 渲染引擎:用来解析HTNL和CSS,俗称内核。如chrome的blink,老版本的webkit
  • JS引擎:成为js解释器,用来读取网页中的JavaScript代码,对齐处理后运行。如chrome浏览四的VB。
    == 浏览器本身不会执行js代码,而是通过内置的JS解释器来执行js代码。js引擎执行代码时逐行解释每一句源码,转换为机器语言,然后由计算机去执行。==

js组成

  • ECMASript: js语法
  • js API:
    • DOM(页面文档对象模型):是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过DOM提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色)
    • BOM(浏览器对象模型):提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,如:弹出框、控制浏览器转换、获取分辨率等。

js三种书写位置:

  • 行内式js:特殊情况使用
  • 内嵌式js
  • 外部式js

js注释

单行注释:ctrl+/
多行注释:shift+alt+a

js输入输出语句

[js学习] javaScript学习

变量

  • 只声明未定义的打印出来结果为 undefined
  • 不声明直接使用会报错
  • 变量不声明直接赋值使用也可以正常使用

尽量不用name作为变量名

数据类型

js是弱类型或动态类型语言
js的变量数据类型只有程序在运行过程中根据等号右边的值来确定
变量的数据类型可变

js数据类型的分类

  • 简单数据类型:
    -Number
    数字前加0表示八进制,log输出为十进制的结果
    数字前为0x表示十六进制
    Number.MAX_VALUE:最大值
    Number.MIN_VALUE:最小值
    Infinity:无穷大
    -Infinity:无穷小
    NaN:代表一个非数值
    isNaN():用来判断非数字,返回true表示不是数字,false表示是数字
    -Boolean:
    true:参与加法运算当1来看
    false:参与加法运算当0来看
    -Spring
    字符串转义字符(在引号中使用)
    \n:换行
    \:斜杠
    ":双引号
    \t:缩进
    \b:空格
    字符串长度:length属性
    字符串拼接:+(可以拼接任何数据类型,只要与字符串类型+结果都为字符串)

    -Undefine:声明了变量,但没有给值
    -Null:声明某个变量为空值 var a=null
    NaN、underfined和数字相加最后结果是NaN

获取变量数据类型

  • typeof 变量名
    prompt取值为字符型
    控制台颜色所代码数据类型:
蓝色 数字
黑色 字符串
深蓝色 布尔型
灰色 undefined/null

数据类型转换

转换为字符串类型:

[js学习] javaScript学习
第三种方法+为隐式转换

转换为数字型

[js学习] javaScript学习

parseInt()方法只取整,全舍进位。若有单位会舍去单位

转换为布尔型

Boolean(’ '):
代表空、否定的值会转化为false,如‘’、0、NaN、null、undefined
其余为true

  • 复杂数据类型

编译型语言和解释型语言
[js学习] javaScript学习

[js学习] javaScript学习
标识(zhi)符:开发人员为变量、属性、参数取的名字。标识符不能是关键字和保留字。
关键字:js本身已经使用了的字
保留字:预留的关键字