javascript基础语法备忘录-变量和数据类型
//javascript基础语法备忘录-变量和数据类型
// 定义变量使用var关键字 后面跟变量名,不要使用eval 和arguments为变量名
var message = "hi";
message =100; //有效但是不推荐
//如果声明变量时未初始化,message保存一个特殊值undefined
var message;
// 在函数中定义变量一定要使用var ,否则此变量将成为全局变量
function test() {
var a = 1; //勿要忘记var
}
//ECMAscript有5中基本数据类型,Undefined,Null,Boolean,Number,String
//一个值使用typeof操作符 将返回一下字符串,注意typeof不是函数 而是一个操作符
"undefined" //如果这个值未定义
"boolean" //如果是布尔值
"string" //如果是字符串
"number"//如果是数值
"object" //如果是对象或者null
"function" //如果是函数
//以下三种方式都可以
alert(typeof message); //"string"
alert(typeof (message));//"string"
alert(typeof 95); //number
//Undefined类型只有一个值,就是undefined,在使用var声明但没有初始化的话,这个变量值就是undefined,
var m1 ;
alert(m1 == undefined); //true
//下面与上面等价
var m2 = undefined; //没有必要初始化undefined,未经初始化的值默认就是undefined
alert(m2 == undefined); //true
//注意包含undefined的值和尚未定义的值是不一样的
//下面没有声明 var age
alert(message);//“undefined”
alert(age); //产生错误
//上面的代码第一个 显示message的值 undefined
//第二行显示一个错误 因为age没有定义
//对未声明的变量只能使用typeof检测数据类型 ,但是会返回undefined,为未初始化的也会返回undefined,所以对显示的初始化。例如字符串初始化为"",数值初始化为0, 当使用typeof时,如果返回的是undefined,那么这个变量就没被声明
//对未声明的变量使用delete不会产生错误,
//Null类型是第二只只有一个值的类型, typeof检测到null时返回object,如果定义的变量用来保存对象,应该初始化为null 这样一来只要检查到对象是否被保存
//只要在保存的变量没有真正保存对象,就应该初始化为null ,这样体现了null作为空对象指针的管理。也用来区别undefined
alert(null == undefined);//ture
var cat = null;
alert(typeof cat); //object
//Boolean类型有两个值,ture和false ,true不一定等于1,false不一定等于0 ,true和false是区分大小写的,True和False不是Boolean的值
//将一个值转换为Boolean 可以使用Boolean();
var t1 = "hello";
var bm = Boolean(t1);
//以下会返回true,
/*
true,非空字符串,非零数字值,任何对象
*/
//以下返回false
/*
false,"",0和NaN,null,undefined
*/
//在流程判断时错误的使用对象而不是布尔值会产生错误
//在进行算术运算的时候 八进制和十六进制都会被转换成十进制,正零和负零被认为相等
//浮点数小数点后必须有一位数字,如果小数点后面没有数字就会作为整数保存,浮点数本身是一个整数,也会被转换成整数
var f1 = .1;//有效但不推荐
var f2 =1.; //解析为1
var f3 =10.0 ;//解析为10.0
//数值范围从 Number.MIN_VALUE~Number.MAX.VALUE 也就是5e-324~1.7976931348623157e+308
//如果超过这个范围,负数转换成-Infinity 正数Infinity
//如果某数得到了INfinity将无法参与下次计算
//可以使用isFinite()函数检测是否在范围内 不是返回false
var result = Number.MAX_VALUE+Number.MIN_VALUE;
alert(isFinite(result)); //false
//NaN(Not a Number) 用于表示返回一个数值操作,但是没有返回的情况,任何NaN参与的运算结构都是NaN,它与任何值都不相等,包括自己
alert(NaN==NaN) //flase
//isNaN()接收一个参数 任何不能转换为数值的值都会使整个函数返回true
//数值,布尔值,对象,字符串都有toString()方法,但null和undefined没有 , 通过传参数可以使toString()转换为输出数值的字符串形式
var num = 10;
alert(num.toString(2)); //"10"
alert(num.toString(8)); //"1010"
alert(num.toString(10)); //"10"
//如果不知道转换值是不是null或者undefined时 使用String();
alert(String(null)); //"null"
alert(String(age)); //"undefined" age没有声明
//Object类型
var o = new Object();
var o2 = new Object; //推荐
//每个对象都有以下方法和属性
//constructor 用于保存创见当前对象的构造函数 上面例子就是Object();
//hasOwnProperty(propertyName),检查给定的属性是否存在当前对象中 属性名必须是字符串形式
o.hasOwnProperty("name");
//isPrototypeOf()检查传入的对象是否是对象的原型
javascript基础语法备忘录-变量和数据类型的更多相关文章
- 前端学习笔记--js概述与基础语法、变量、数据类型、运算符与表达式
本篇记录js的概述与基础语法.变量.数据类型.运算符与表达式 1.概述与基础语法 2.变量 举例: 3.数据类型 4.运算符与表达式
- python基础语法(变量与数据类型)
python基础语法(变量与数据类型) 一.python变量 python中的变量不需要声明.每个变量在使用钱都需要赋值,变量赋值以后,该变量才会被创建 在python中,变量就是变量,它没有类型,我 ...
- scala基础语法(变量,数据类型,函数)
一:常量与变量 1.常量 2.两种变量定义方式(严格与不严格) 3.Float注意点 3.注意点 变量名后加上: 类型首字母是大写 4.占位符_ 但是需要制定类型 5.scala数据类型 6.其他类型 ...
- 学习 JavaScript (三)核心概念:语法、变量、数据类型
JavaScript 的核心概念主要由语法.变量.数据类型.操作符.语句.函数组成,这篇文章主要讲解的是前面三个,后面三个下一篇文章再讲解. 01 语法 熟悉 JavaScript 历史的人应该都知道 ...
- JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...
- javascript基础语法——词法结构
× 目录 [1]java [2]定义 [3]大小写[4]保留字[5]注释[6]空白[7]分号 前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫 ...
- Unit04: JavaScript 概述 、 JavaScript 基础语法 、 流程控制
Unit04: JavaScript 概述 . JavaScript 基础语法 . 流程控制 my.js function f3() { alert("唐胜伟"); } demo1 ...
- javascript基础语法——表达式
× 目录 [1]原始表达式 [2]复杂表达式 前面的话 一般地,关于javascript基础语法,人们听得比较多的术语是操作符和语句.但是,其实还有一个术语经常使用,却很少被提到,这就是javascr ...
- Java基础语法(2)-变量
title: Java基础语法(2)-变量 blog: CSDN data: Java学习路线及视频 1.什么是变量? 变量的概念 内存中的一个存储区域 该区域的数据可以在同一类型范围内不断变化 变量 ...
随机推荐
- python连接数据库--查询数据
#!/usr/bin/python # -*- coding: utf-8 -*- import pymysql def fileDB(): # 打开数据库连接(ip/数据库用户名/登录密码/数据库名 ...
- CodeForces - 710C Magic Odd Square(奇数和幻方构造)
Magic Odd Square Find an n × n matrix with different numbers from 1 to n2, so the sum in each row, c ...
- windows下部署icescrum
软件151 卢炜杰 一.安装JDK 1.下载JDK 地址:http://www.oracle.com/technetwork/java/javaee/downloads/index.html 选择相 ...
- Visual Studio 2015安装插件
VS2015可以通过安装各种插件增强自己的功能! 插件安装方法: 下载插件后,打开VS2015,双击插件就会出现对应插件安装界面了,对应安装一下就可以了! 插件网址: https://marketpl ...
- 并查集【洛谷P1197】 [JSOI2008]星球大战
P1197 [JSOI2008]星球大战 题目描述 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治着整个星系. 某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系 ...
- CF796A Buying A House 模拟
Zane the wizard had never loved anyone before, until he fell in love with a girl, whose name remains ...
- linux上传与下载
首先必须安装xshell这个工具 使用xshell来操作服务非常方便,传文件也比较方便.就是使用rz,sz首先,服务器要安装了rz,szyum install lrzsz当然你的本地windows主机 ...
- js 遍历tree的一个例子(全遍历)
全遍历 亲测真是有效. 工作中遇到的问题应该算是比较有价值的问题. <!DOCTYPE html> <html lang="en"> <head> ...
- vue js 实现 树形菜单
添加一个模板.<template id="menu-template"> <li v-if="model.nodes!=undefined"& ...
- IE浏览器提示对象不支持“append”属性或方法
如下代码在IE浏览器中无法执行,提示对象不支持“append”属性或方法 var tImg = document.createElement("img"); tImg.setAtt ...