javascript基础扫盲
JavaScript基础扫盲
null和undefined

null是一个是非来表示一个空对象的,故 typeof 的返回值是object
undefined字面义为未定义,当遇到声明一个变量,但没有赋值的时候,typeof的类型即为undefined
非十进制的表示方法

- 十六进制:以
0x开头 - 八进制:以
0开头 - 二进制:以
0b开头
进制转换如果以指定进制规定的格式书写是没有问题的
parseInt有平台兼容的问题
直接使用parseInt()解析070的字符串在chrome平台会得到70,而在firefox平台则会直接识别其为八进制的字符串,然后转换成数字56
parseInt()的第二个参数为进制,指定进制转换便可解决这个问题。
强制类型转换
强制类型转换,将一个类型转换为需要的数据类型
string
toString():由转换类型的内置方法进行转换,即value.toString()便可以获取对应的字符串String():系统方法,当toString()方法无法使用时(主要是在null和undefined类型面前失效),便可以使用,null和undefined将变等价转换成相同的字符中"null""undefined"

number
Number()- 字符串-->数字
- 纯数字组成的字符串,将得到相应的整数值
- 如果字符串由数字和非数字字符组成,将得到
NaN - 如果字符串是一个空串或一个空格的字符串,则转换为0
- 布尔-->数字:
true值为1,false值为0 null-->数字:null转换将得到值 0undefined-->数字:undefined转换得到值是NaN,且NaN参与的运算都会得NaN
- 字符串-->数字
parseInt():将字符串转换成整数,也可以按进制进行转换。与parseFloat()仅从字符串开头识别,如果数字位于中间,将无法识别转换且返回NaNparseFloat():在parseInt()的基础上支持识别小数点后的数字位。

boolean
Boolean():将其它数据类型转换为bool值
数字,除了0和NaN为false,其余数,包括负数,转换结果为true
字符串,空串转换为false,其余为true
null和undefined,转换结果均为false
对象转换为true

运算
通过运算符可以对一个值或者多个值进行运算,并得到相应的结果。
算术运算符
- 任何值和
NaN做任何运算都得NaN - 任何数值与字符串做加法运算都先转换成字符串,然后变成字符串相加,拼接处理
- 任何数值与字符串做减乘除运算,都先将字符串转换成数值然后进行数学计算。


布尔运算符

相等运算符
==和!=:进行相等运算,会自动进行类型转换,当1 == ”1”就会返回true===和!===:进行全等运算,不会自动进行类型转换,当类型都不一样的时候,条件全等就不成立,不全等成立,反之,亦然
javascript基础扫盲的更多相关文章
- JavaScript基础
JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...
- 一步步学习javascript基础篇(0):开篇索引
索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...
- 前端之JavaScript基础
前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...
- 一步步学习javascript基础篇(3):Object、Function等引用类型
我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...
- Javascript基础回顾 之(三) 面向对象
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(二) 作用域
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(一) 类型
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- JavaScript 基础回顾——对象
JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...
- javascript基础01
javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...
随机推荐
- Mysql查看sql是否走事务
登陆进入server [root@gzmtest_25 ~]# su - mysql [mysql@gzmtest_25 ~]$ mysql.local Welcome to the MySQL mo ...
- Android 重写onBackPressed()方法 遇到的问题
1.resultCode的值一直为0 问题描述:AActivity调用startActivityForResult()方法,启动BActivity,然后在BActivity的onBackPressed ...
- bzoj5085: 最大
暴力是4方的,开始我只3方(扫描的时候更新当前最大) 二分+暴力可以做到m^2logMAX 二分答案,暴力枚举可行的两个位置形成一段,对于段,最多只会有m^2种情况. #include<cstd ...
- Java8新特性之Optional
空指针异常一直是困扰Java程序员的问题,也是我们必须要考虑的.当业务代码中充满了if else判断null 的时候程序变得不再优雅,在Java8中提供了Optional类为我们解决NullPoint ...
- pair的定义C++
template <class T1, class T2> struct std::pair { typedef T1 first_type; typedef T2 second_type ...
- 协同过滤算法中皮尔逊相关系数的计算 C++
template <class T1, class T2>double Pearson(std::vector<T1> &inst1, std::vector<T ...
- Blender之UILayout
目标 [x] 总结Blender面板布局 总结 Blender面板中界面组件是通过UILayout进行组织的. 其主要属性如下: row() 定义横向子布局. column() 定义竖向子布局. sp ...
- POJ 2688 Cleaning Robot
题意: 给你一个n*m的图.你从'o'点出发,只能走路(图中的'.')不能穿墙(图中的'x'),去捡垃圾(图中的' * ')问最少走多少步能捡完所有垃圾,如有垃圾捡不了,输出-1. 思路: 有两个思路 ...
- POJ 2553 Tarjan
题意:如果v点能到的所有点反过来又能到v点,则v点是sink点,排序后输出所有的sink点. 思路:Tarjan缩点,输出所有出度为0的连通块内的点. PS:一定要记得把数组清零!!!!!!!否则自己 ...
- CSS的常用属性(一)
文本属性 font-size: 16px 文字大小 font-weight: 700 文字粗细 值从100-900 (值为700看上去加粗了) 不推荐使用font-weight: bold font- ...