首页 技术 正文
技术 2022年11月21日
0 收藏 837 点赞 4,965 浏览 1758 个字

数据的类型转换

之前提到过,js中数据类型分两种,

  基本数据类型string  number   boolean  undefined  null

  复杂数据类型 对象   Date   Array  function

  而在实际编程中,经常会与到数据类型转换的问题,比如把字符串类型的数据转化成数字类型的,又或者是把数字类型的转化成布尔类型的,那js中到底怎么实现数据类型的转换呢?

转成number

  隐式转换  +    –   *    /   %  ;值得注意的是,+在这里是用做正负的作用,而且是放在要转换的值得前面的。

  强制转换  使用外部的方法或是函数进行的数据转换

  Number()    parseInt()     parseFloat()

  var a = “123”;
  var b = true;
  console.log(Number(a)); // 123
  console.log(Number(true)); // 1
  console.log(Number(null)); // 0
  console.log(Number(undefined)); // NaN
  console.log(Number(“123.456”)); // 123.456
  console.log(Number(” “)); //0

  boolean类型的值转换成Number类型true–>1    false–>0;

  unerfined—–> NaN;

  如果能将值转换成数字,就转换成对应的值,如果不能转换,则报NaN.

  Number()函数的特点:

  a.如果转换的内容可以转成数字,那么就直接返回这个内容对应的数字。

  b.将整体进行转换,如果有一个不可以转换那么返回NaN.

  c.如果在内容中出现小数,那么小数会保留,也会输出小数。

  d.如果内容为空(null),那么转换成0;

转成string类型:

  隐式类型转换:+“”

  强制类型  toString()    String();

  万物皆对象,JS中的对象几乎都有toString();null,undefined是没有toString()方法,如果要强制转换的话,只能使用String();能用toString()转换的对象,对string()都可以。

转boolean类型

  隐式类型       !!

  强制类型       Boolean()

  数据类型转boolean的时候,为false的情况:

  0, “”,null,undefined,NaN, 这些转成boolean类型的时候都为false,其它的都为true;

函数:

  函数:其实就是一段代码,一段可以在使用的时候执行,可以重复使用的代码块。它把可以重用的东西提取成函数,把不可重用的东西当成参数传入函数。

函数的定义:

function 函数名(参数){

  函数体(都是可执行的或是要执行的代码);

}

  函数有三要素:函数名(函数的功能),参数,返回值。

  首先来讲讲函数名,因为js对大小写是很敏感的,所以在命名函数和调用函数的时候大小写都要一直,否则的话就不能调用函数了。然后就是参数,也就是我们提供给函数的数据,函数中的参数可以是任意多个,也可以不写参数,如果有两个及以上参数的时候,参数与参数之间用半角的英文逗号隔开。最后,就是函数的返回值。每个函数都是有返回值的,如果在函数中没有明确的返回值的话,那么函数就会返回underfined。

  函数调用的时候一般都用函数名加括号的形式来调用。函数名();

  在函数中,还有形参跟实参的区别,形参就是在函数定义的时候,所传入的参数,主要就是为了起占位置的作用。而实参则是函数在调用的时候所传入的参数值。定义好了函数之后,在函数调用的时候,会将函数的实参复制一份传到函数定义时的形参里面,会和之前的一一对应起来,如果实参和形参的个不一样的时候,会先按之前的分配,也就是匹配形参中的前面几个。所以实参和形参的个数是可以不一样的。

  关于函数,还有些不得不提的就是他的作用域的问题。js编程环境的顶级作用域是window对象下的范围,称为全局作用域,全局作用域中的变量称为全局变量。而js函数内的变量无法在函数外面访问,在函数内却可以访问函数外的变量,函数内的变量称为局部变量。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,086
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,561
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,410
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,183
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,820
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,903