文档章节

Javascript 基础知识之数据类型

learn_more
 learn_more
发布于 2014/11/09 00:04
字数 492
阅读 47
收藏 0

javascript是一种弱类型的脚本语言

 1)var  param ;(根据所赋值的类型确定变量类型,变量类型可以随意改变)

全局变量

1)方法外的变量,或者是方法中未使用var声明的变量

局部变量 

 1)方法中使用var声明的变量

Number类型

1) 小数不能直接使用“==”来判断相等;NaN、Infinity、-Infinity  等

undifined

1) 变量已经声明过但是没有被赋值。

null

 1)声明变量为空值,如 var parma = null ; 

基本数据类型(5 种)

1) Number String  Boolean Undefined Null

引用数据类型

1) Object类型(比如 对象Object 、 数组Array 、日期Date 、 RegExp....) 

2)var pram = {  } ; =new Object() ; = [ ] ; = new Date( ) ;

typeof param

1)typeof param ; 确定param的数据类型。

2)如果param=undefined ; typeof param 为 undefiend

3)如果param=null ; typeof param 为 object ,原因就是null其实是一个空对象的引用,但是如果使用alert(null == undefiend);则会返回 true ;

总结

1)关于null与undefiend的比较

var param = null ;       
var param2 = undefined ; 
alert( (typeof param)+" "+(typeof param2)+" "+(param == param2)+""+(param === param2));
console:object  undefiend  true false


2)关于null与undefiend的生成

如果从未声明过变量就使用这个变量,会发生错误“ ReferenceError: param is not defined

          如果声明过变量从未赋值就使用这个变量,会发生错误“TypeError: param is undefined” 

          如果使用document.getElementById('name'),而name并不存在dom中,则会是 “null"

如果使用一个对象的未定义方法,会发生错误” TypeError: param.sayHello is not a function

3)关于alert的使用

alert(str);默认参数是字符串类型,所以但我们使用alert(object)时,会默认调用object.toString( );类似于java

4)NaN == NaN 是 false  , undefiend == undifend 是true

5)变量的自动转换

=== 等同符:不会发生类型的自动转化!

== 等值符:会发生类型自动转化、自动匹配!


© 著作权归作者所有

learn_more
粉丝 94
博文 240
码字总数 210196
作品 0
深圳
程序员
私信 提问
javascript学习思维导图

JavaScript 数据类型 JavaScript 变量 Javascript 运算符 JavaScript 流程控制 JavaScript 数组 JavaScript 函数基础 JavaScript 字符串函数 JavaScript 正则表达式 DOM 基本操作 Window 对象...

IT智云编程
2018/09/12
0
0
我认为一些必知的JavaScript基础知识

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。 JS作用:表单验证,减轻服务端的压力;添加页面动画效果;动态更改页面内容;Ajax网络请求。 下面简...

peakedness丶
2018/11/02
0
0
JavaScript基础(一)概述

JavaScript 概述 JS作用 验证表单(以前的网速慢) 页面特效(PC端的网页效果) 移动端(移动web和app) 异步和服务器交互(AJAX) 服务端开发(nodejs) 语言类型 js是一种脚本语言,不仅是...

fengdaoting
2018/05/03
0
0
JavaScript菜鸽子基础知识总结(一)

学习JavaScript有段时间了,尽管学的不怎么好。但我相信有志者,铁杵磨成针。呵呵呵~~ ①JavaScript能做什么?我所了解的 ⑴在HTML网页中放入动态文本 ⑵响应用户在使用网页时产生的事件 ⑶检...

睡觉谁教谁叫呢
2014/02/18
0
0
《前端面试手记》之JavaScript基础知识梳理(上)

👇 内容速览 👇 普通函数和箭头函数的 原始数据类型及其判断和转化方法 深浅拷贝及实现 JS事件模型 常见的高阶函数 🔍查看全部教程 / 阅读原文🔍 普通函数和箭头函数的this 还是一道...

godbmw
03/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

二进制位操作

单片机,或者一些模块的设置操作,都是由一个字节数据来完成,每位各有定义。就需进行位操作来组合需要的数字结果。 以JavaScript为例,编写位操作。 我们期望得到这样一个二进制数:0101101...

format
32分钟前
3
0
聊聊中国的通信行业:从“七国八制”到“中华”脊梁

本期文章和大家一起来聊一聊我曾经从事过的通信行业吧。最近各方面信息的泛滥,包括和华为的同学聊天,自己确实也感慨颇多。想想我自己本科主修通信工程,研究生再修信息与通信工程,从本科开...

CodeSheep
今天
6
0
MDK:ARM M451M:exceed the range of code meory, continue to erase or not?

问题: 代码空间超限 几天前就遇到:exceed the range of code meory, continue to erase or not? 如下所示: 解决过程 开始以为中MDK软件的128KB限制,如是就不能生成HEX文件,应该链接时有提...

SamXIAO
今天
1
1
OSChina 周六乱弹 —— 因违反《中华人民共和国治安管理处罚法》第四十四条之规定

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @xiaoshiyue :#今日歌曲推荐# 惊艳分享谷微的单曲《安守本份》(@网易云音乐) 《安守本份》- 谷微 手机党少年们想听歌,请使劲儿戳(这里) ...

小小编辑
今天
574
12
Angular 英雄编辑器

应用程序现在有了基本的标题。 接下来你要创建一个新的组件来显示英雄信息并且把这个组件放到应用程序的外壳里去。 创建英雄组件 使用 Angular CLI 创建一个名为 heroes 的新组件。 ng gener...

honeymoose
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部