数据类型的转换

转化为字符串

String(value) 转型函数

这个转型函数能把任何类型的值转化为字符串

  • 如果值有toString()方法 则用这个方法(调用没有参数的toString,默认十进制)
  • 如果值为null和undefined 则返回null和undefined

toString()方法    ----   index.toString( 参数(此参数为数字转换为字符串的多少进制))

除了null和undefined值没有这个方法,其他类型的值都有这个方法

转化为数字

Number() 函数 (默认十进制)

  • 可以转化任何类型
  • 字符串类型 :
  • 如果是空字符串返回0
  • 识别 - + . 数字 (有其他符号就会返回NaN)
  • null类型 : 返回 0
  • undefined类型: 返回undefined
  • 数值类型:不变
  • boolean类型:true:1  false: 0
  • 复杂且不合理

下面两种专门转化字符串到数字

parseInt(参数1,参数2(最好设置为10进制))  函数(更多在乎是否符合数值类型)

忽略字符串前面的空格,只找数字字符和减号/加号

空字符串会返回NaN

遇到非数字字符就会终止

parseFloat()函数  只能解析十进制的 可以解析小数


高阶函数

函数可以作为参数传递


当一个函数没有返回值的时候,那么就会返回undefined

数据类型

五种简单数据类型,基本数据类型

  • boolean
  • number   /js不区分整数和浮点数
  • string
  • null
  • undefined

一种复杂数据类型,引用型数据类型

  • object

null和 undefined区别

1.发生数据类型不匹配时,往往是自动转换类型或者默默地失败。Brendan Eich觉得,如果null自动转为0,很不容易发现错误。

JavaScript的最初版本是这样区分的:null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN

但是,上面这样的区分,在实践中很快就被证明不可行。目前,null和undefined基本是同义的,只有一些细微的差别。

null表示"没有对象",即该处不应该有值。典型用法是:

(1) 作为函数的参数,表示该函数的参数不是对象。

(2) 作为对象原型链的终点。


Object.getPrototypeOf(Object.prototype)
// null

undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:

(1)变量被声明了,但没有赋值时,就等于undefined。

(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。

(3)对象没有赋值的属性,该属性的值为undefined。

(4)函数没有返回值时,默认返回undefined。

var i;
i // undefined function f(x){console.log(x)}
f() // undefined var o = new Object();
o.p // undefined var x = f();
x // undefined

 

根据语义来区分:null更多的是引用语意/ undefined更多是值语义(复习一下垃圾回收机制的引用计数回收)


变量

变量只是对值的一个引用

给变量加上一堆()没有改变变量的意思   typeof a  typeof(a)


模板字符串与转义符

 

模板字面量 是允许嵌入表达式的字符串字面量

字符串转义符号

  • \n  换行
  • \t 空格键
  • \\  \
  • \"  引号

第二季 第四天 part2的更多相关文章

  1. 第二季 第四集 part3

    obj.insertAdjancetHtlm("beforeend"(位置), r(内容)) insertAdjacentHTML() 将指定的文本解析为HTML或XML,并将结果 ...

  2. 第二季 第四集 css2

    display属性 指定了元素的显示类型 它包含两类基础特征,用于指定元素怎样生成盒模型 外部显示类型定义了元素怎样参与流式布局的处理 外部显示类型 */ display: block; // 独占一 ...

  3. 第二季 第十一天 part2

    const greeting = function() { // 注意,这个 this.name 取决于谁调用了 greeting() 函数 console.log('Hi, ', this.name ...

  4. JAVA入门第二季(mooc-笔记)

    相关信息 /** * @subject <学习与创业>作业1 * @author 信管1142班 201411671210 赖俊杰 * @className <JAVA入门第二季&g ...

  5. Big Data 應用:第二季(4~6月)台湾地区Game APP 变动分布趋势图

    图表简介: 该示意图表示了台湾地区第二季内所有Game APP类别的分布情形,经由该图表我们可以快速的了解到在这三个月内,哪类型的APP是很稳定:抑或者哪类型的APP是非常不稳定的. 名词解释: 类别 ...

  6. QQ聊天界面的布局和设计(IOS篇)-第二季

    QQChat Layout - 第二季 本来第二季是快写好了, 也花了点功夫, 结果gitbook出了点问题, 给没掉了.有些细节可能会一带而过, 如有疑问, 相互交流进步~. 在第一季中我们完成了Q ...

  7. 高晓松脱口秀--晓说(第一季&第二季)mp3下载

    晓说 第一季 (1-5) http://pan.baidu.com/share/link?shareid=480859&uk=4043605559 (6-10) http://pan.baid ...

  8. 高手养成计划基础篇-Linux第二季

    高手养成计划基础篇-Linux第二季   本文来源:i春秋社区-分享你的技术,为安全加点温度   前言 前面我们学习了文件处理命令和文件搜索命令,简单的了解了一下Linux,但是仅仅了解这样还不行,遇 ...

  9. 怪奇物语第二季/全集Stranger Things迅雷下载

    Netflix的叫好叫座剧<怪奇物语 Stranger Things>第二季更新上线日期为美国时间10月27日,第二季讲述在1984年(相隔上季一年),印第安纳州的Hawkins镇市民仍然 ...

随机推荐

  1. HttpClient测试

    导入maven依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson&l ...

  2. flask 常用数据模型模板

    1.一对多关系模型 示例代码 class Role(db.Model): """角色表""" __tablename__ = 'roles' ...

  3. [强网杯 2019]Upload

    0x00 知识点 代码审计,PHP 反序列化. 0x01 解题 先注册一个账号,再登陆 上传 简单测试一下: 只能上传能被正常查看的 png. F12看到文件上传路径 扫扫敏感文件 存在:/www.t ...

  4. nginx proxy_pass解释

    在当前大部分对外提供的web服务会使用nginx做负载均衡,日常相关的proxy_pass设置有: 以http://192.168.1.101/proxy/test.html进行访问为例子 第一种: ...

  5. 四十七、在SAP中,把功能区块整合成一个函数,通过调用函数的办法使代码简洁明了

    一.我们查看上一次的代码,非常之凌乱,大体可以分为以下这几个区块 二.我们把最后的2个部分,用函数的方式来写,写法如下: 三.执行程序,和之前一样 四.输出结果

  6. vim 好用的插件

    1  切换文件   使用buffer   这里可以安装一个  minibufExplorer https://github.com/huanglongchao/minibufexpl.vim 2 在项 ...

  7. 关于 with 语句

    class C(object): def __enter__(self): print('jinru') return self def __exit__(self, exc_type, exc_va ...

  8. SpringBoot+SpringSecurity之如何forword到登录页面

    当我们在项目中引入了SpringSecurity框架进行身份校验的时候,如果某个请求需要用户身份认证,那么SpringSecurity会将用户redirect到登录页面.但是有些时候我们希望是forw ...

  9. IE8兼容问题汇总

    一.css的hack写法 IE8 CSS hack 就是在属性后面加上 \9 或者 \0,代码如下: color:#FFF\0; /* IE8 */ color:#FFF\9; /* 所有IE浏览器( ...

  10. C语言-浮点类型

    C语言-浮点类型 浮点类型 在0的两侧有一小块区域,这个区域非常接近0,但是不等于0,是float(表达范围数量级10^-38^)或者double(达范围数量级10^-308^)无法表达的,而0是可以 ...