js的注释与分号
// 单行注释
/**/多行注释 ctrl +shift +/
语句结束使用分号,如果省略,则由解析器确定语句的结尾
js语法 1.变量、函数名、操作符都区分大小写
2.标识符
(1)什么是标识符
变量、函数、属性的名字或者函数的参数
(2)标识符的命名规则
1>由字母数字下划线或$组成
2>不能一数字开头
3>不能使用关键字、保留字等作为标识符
3.变量
1.ECMAScript 的变量是松散型的
松散型:可以用来保存任何类型的数据
换句话说,每个变量仅仅是一个用来保存值得占位符而已
2. 变量声明
变量的声明要使用var操作符
语法: var 变量名
注:省略var声明的变量是全局变量,不推荐使用
3. 变量赋值
方法一:先声明后赋值
var xx;
xx='hello';
方法二:声明的同时赋值
var age=18;
一次声明多个变量
var a=12,b='hello',c;
4.数据类型
简单的数据类型(基本数据类型)
Undefined 只用一个值---特殊的undefined
没有赋值的变量类型就是undefied
Null
空指针对象
如果定义的变量准备将来用于保存对象,最好将其初始换问Null
Boolean
true
false
类型转化
0、空字符串、null、undefined转化成布尔值是false 其他的为true
Number
整数和浮点数
NaN not a number 是特殊的数值
任何涉及NaN的操作(NaN-10)都返回NaN
NaN与任何值都不相等,包含NaN本身
isNaN(n)-----函数检测n是否是非数值 是非数值返回True 是数值返回flase
接受到参数后,尝试把参数转化成数值,如果能转就转后再返回结果 例如'16'也是数值
String
用于表示由0或多个16位Unicode字符组成的字符序列,即字符串,字符串可以双引号或单引号表示
将其他类型转化成字符串函数
toString()函数
语法:abc.toString()
返回值:abc的一个副本
参数:abc是要转换的内容,可以是数值或布尔值或对象或字符串
String()函数
强制转化,能够将任何类型的值转化成字符串 ECMAScript6新增了symbol类型
symbol
复杂的数据类型
Object
typeof---检查变量类型
typeof 变量 或typeof(变量)
返回值string类型
console.log(typeof age)//在控制台中打印
数值转化(有3个函数可以把非数值转化成数值类型)
Number() 把值强制转化成数据类型,遇到字符串转不了时,返回NaN
parseInt() 专门用于把字符串转化成数值
1.操作的参数必须是数字开头才能提取出来 例如28px可以 ss28提取不出来返回NaN
2.parseInt()接收两个参数,一个是被转化的参数一个是转化时使用的基数(多少进制)
var topval='28px';
topval=parseInt(topval)
console.log(topval) //返回的值是28
parseFloat() 专门用于把字符串转化成数值
从第一个字符开始解析每个字符,直到遇见一个无效的浮点数值为止
除了第一个小数点有效外,与parseInt()的第二个区别是它始终会忽略前导的零
5.操作符
算数操作符
+ - * / % ++a(先返回递增之后的值) a++(先返回原值,再递增)
其他操作符
逻辑操作符
逻辑与 &&
说明:在有一个操作数不是布尔值时,逻辑与操作就不一定返回值,此时遵守以下规则:
1.如果第1个操作数隐式类型转化后为true,则返回第2个操作数
2.如果第1个操作数隐式类型转化后为false,则返回第1个操作数
3.如果操作数中有一个是none 或NaN或undefined 就直接返回none 或NaN或undefined
逻辑或 ||
说明:在有一个操作数不是布尔值时,逻辑或操作就不一定返回布尔值,遵循以下规则
1.如果第一个操作数隐士类型转化成true则返回第一个操作数
2.如果第一个操作数隐士类型转化为false则一次往下判断,直到遇到true的就返回
3.如果操作数都是none 或NaN或undefined 就返回none 或NaN或undefined
逻辑非 ! -----永远返回布尔型
说明:
1.无论操作数是什么数据类型,逻辑非都会返回布尔值
2.!!同时使用两个逻辑非操作符时
第一个会基于操作数返回布尔值
第二个对该布尔值求反
赋值操作符
比较操作符
==相等,只比较值是否相等
===:相等,比较值得同时比较数据类型是否相等
!=:不相等,比较值是否不相等
!==:不相等,比较值得同时比较数据类型是否不相等
返回值:boolean型
三元操作符
语法:
条件?执行代码1:执行代码2
说明:
可代替简单的if语句 如果条件成立,执行代码1,否则执行代码2

JavaScript基础------JavaScript语法的更多相关文章

  1. javascript基础、语法

    JavaScript基础(简介.语法) 一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? ...

  2. JavaScript基础——JavaScript语法基础(笔记)

    JavaScript语法基础(笔记) 1.语言编码 JavaScript语言建立在Unicode字符集基础之上,因此脚本中,用户可以使用双字节的字符命名常量.变量或函数等. [示例] var 我=&q ...

  3. javascript基础一语法和常用函数

    1语法 1.1引入的方式 在html中引入javascript,使用script标签,在html页面中包括外部引入js方式和在html内部引入js方式.如下两种: 方式一: <script ty ...

  4. 2017-3-28 JavaScript 基础、语法

    前端三剑客:  html+css+js(html 决定网页上有什么,css决定东西是怎么摆放的,js决定东西的功能) js定义: js是一个脚本语言,需要有宿主文件,它的宿主文件是html文件. js ...

  5. javascript基础:语法与html结合方式

    一.基本语法: 1.与html结合方式 1.内部JS: *  定义<script>,标签体内容就是JS代码 2.外部JS: *  定义<script>,通过src属性引入外部的 ...

  6. javascript基础1 语法 点击事件 超链接带点击事件

    javascript ----------------------------------------------------------------------------------------- ...

  7. JavaScript基础(语法类型转换、运算符、语句)

    1.类型转换: 分为自动转换和强制转换,一般用强制转换. 其他类型转换为整数:parseint(): 其他类型转换为小数:parsefloat(): 判断是否是一个合法的数字类型:isNaN(): 是 ...

  8. JavaScript基础——JavaScript函数(笔记)

    avaScript 函数(笔记) JavaScript 是函数式编程语言,在JavaScript脚本中可以随处看到函数,函数构成了JavaScript源代码的主体. 一.定义函数 定义函数的方法有两种 ...

  9. (译文)JavaScript基础——JavaScript中的深拷贝

    在JavaScript中如何拷贝一个对象? 通过引用调用 function mutate(obj) { obj.a = true; } const obj = {a: false}; mutate(o ...

随机推荐

  1. 文件已经传输过来,数据在data,http接收

  2. jaxb生成pojo类返回类型为布尔值的问题

    返回值为Boolean的话回在对象转json的时候丢失掉这个属性,因为json认的是小写. 这个算jaxb的一个bug:https://java.net/jira/browse/JAXB-510 解决 ...

  3. 注册emf package并读取EMF文件

    /** * 读EMF文件 * * @param uri * @return */ public static Resource readEMFFile(URI uri) { ResourceSet r ...

  4. Spring注解详解(转)

    概述 注释配置相对于 XML 配置具有很多的优势: 它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作.如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO ...

  5. AtCoder Beginner Contest 148

    ABC 148 第一次打abc,记录一下 Task Name Time Limit Memory Limit A Round One 2 sec 1024 MB B Strings with the ...

  6. learning armbian steps(5) ----- armbian 构建arm rootfs

    基于learning armbian step(4) 的总结,我们来实践一下,接下来的会把整个构建的log都贴出来: vmuser@vmuser-virtual-machine:~/qemu-arm$ ...

  7. 51nod 1020

    求 $n$ 个数的排列中逆序数为 $k$ 的排列数$f[n][k]$ 表示 $n$ 个数的排列中逆序数为 $k$ 的排列数$f[n][k] = \sum_{i = 0}^{n - 1} f[n - 1 ...

  8. jenkins创建工程

    1.新建一个工程 2.添加工程名,点击创建一个自由分格的软件项目 3.配置源码管理 4.增加工程构建步骤,选中调用顶层maven目标

  9. SpringBoot2.0 Actuator 监控参数说明

    主要内容更 监控参数说明 Maven坐标 <dependency> <groupId>org.springframework.boot</groupId> < ...

  10. centos7 设置 防火墙 开机自启

    CentOS 7.0默认使用的是firewall作为防火墙,之前版本是使用iptables. 1.设置firewall开机启动 systemctl enable firewalld 2.禁止firew ...