JS(五)简要介绍数组或对象 typeof、类型转换

写在最前面

初始引用值

  • 数组
  • 对象

数组

数组对象用来在单独的变量名中存储一系列的值。形式是一个中括号,里面可以写很多东西,中间用逗号隔开,每个逗号类似可以隔开两个仓库,每个仓库可以放东西,比如Number,String ,undefined,放什么类型的值都可以。

var arr = [1,2,undefined,"abc",["a",1,5],null]
//数组的增加
document.write(arr.push("吴彦祖"));
//打印arr-->[1,2,undefined,"abc",["a",1,5],null,"吴彦祖"]

//数组的删除
arr.splice(0,1)//打印出来是[2,undefined,"abc",["a",1,5],null]


//数组的修改
arr[0];//打印出来是0
arr[0] = 100;//在打印出来就是100;

//数组的查看
for(var i = 0;i<arr.length;i++)
console.log(arr[i]);

关于数组的其他方法

  • For...In 声明
    使用 for...in 声明来循环输出数组中的元素。

  • 合并两个数组 - concat()
    如何使用 concat() 方法来合并两个数组。

  • 用数组的元素组成字符串 - join()
    如何使用 join() 方法将数组的所有元素组成一个字符串。

  • 文字数组 - sort()
    如何使用 sort() 方法从字面上对数组进行排序。

  • 数字数组 - sort()
    如何使用 sort() 方法从数值上对数组进行排序。

对象

JavaScript 对象是拥有属性和方法的数据。JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。在 JavaScript 中,对象是拥有属性和方法的数据。

var obj = {
    key : value,
    建 : 值,
    属性: 属性值; 
}


var car = {
    type:"Fiat", 
    model:500, 
    color:"white"
    money:undefined,
    newCar:false,
}

//增加对象属性
car.width = "1.6m";
//删除对象属性
delete.car.width;
//修改对象属性
car.width = "1.5m";

编程形式的区别

  • 面向过程
  • 面向对象

区别太过复杂,不接受,自己百度找区别去

typeof

  • 六钟数据类型
    • Number
    • string
    • boolean
    • undefined
    • object
    • function
typeof("里面放数据")

var num = 123;
var str = "123";
var a = true;
var b = null; 
var c = undefined;
console.log(typeof(num));//打印-->number
console.log(typeof(str));//打印-->string
console.log(typeof(a));//打印-->boolean
console.log(typeof(b));//打印-->object
console.log(typeof(c));//打印-->undefined
//第二种方法
console.log(typeof c);//打印-->undefined 空格也可以

类型转换

显示类型转换

  • Number(mix)
  • parseInt(string,radix)
  • parseFloat(string)
  • toString(radix)
  • String(mix)
  • Boolean()
//Number转换成数
var num = Number("123");
        = true;
        = false;
        = null;
        = undefined;
        = "a";
        = "123abc";
console.log(num)//打印123
                //打印1
                //打印0
                //打印0
                //打印NaN
                //打印NaN
                //打印NaN

//parseInt转换成整数
//parseInt(String,radix)
//radix 是调整进制取值范围是2-36
//parseInt 是用数字为一直往后面看,看到截止,一直看到非数字位截止,把之前的数字返回
var num = parseInt("123.9");
        = true;
        = false;
        = null;
        = undefined;
        = "a";
        = "123abc";
console.log(num)//打印123不是四舍五入
                //打印NaN
                //打印NaN
                //打印NaN
                //打印NaN
                //打印NaN
                //打印123
                
//parseFloat//把数字转换为浮点数

var num = parseFloat("123.9");
        = true;
        = false;
        = null;
        = undefined;
        = "a";
        = "123.2abc";
console.log(num)//打印123.9
                //打印NaN
                //打印NaN
                //打印NaN
                //打印NaN
                //打印NaN
                //打印123.2
                
//String把内容换成字符串
var num = String(123.9);
        = undefined;
console.log(num)//打印"123.9"
                //打印"undefined"

//Boolean转换成布尔值
//除了undefined、null、NaN、""、0、false 打印出来的是false以外, 其他的全是true
var num = Boolean(123.9);
        = undefined;
console.log(num)//打印true
                //打印false
                
                
                
//toString(radix) 转换成为字符串
//两个不能用一个undefined一个null会报错undefined和unll没有这个toString属性
//radix 是以10进制为基底转换为别的进制
//用法:要转的数据.toString
var demo = 123;
var str = demo.toString();
console.log(str)//打印出"123"

引式内容转换

  • isNaN()
  • ++/-- +/-(一元正负)
  • -,*,/,%
  • &&,||,!
  • <,>,<=,>=
  • == !=
//isNaN()当你把数放在括号里面的时候他能判断这个是是不是NaN,然后给你返回回来

console.log(isNaN(NaN))//打印true

console.log(isNaN(123))//打印false

console.log(isNaN("123"))//打印false

console.log(isNaN("adc"))//打印true

console.log(isNaN(null)//打印false

console.log(isNaN(undefined)//打印true

//isNaN在内部 执行了一个Numbar方法
//比如isNaN("abc")
//首先执行了Numbar("abc")看是不是NaN 如果是就返回NaN
//所以这个numbar它没有显示的去调用,是隐式的去调用
//++,先调用numbar
var a = "123";
a++;//打印出a-->124;

var a = "abc";
a++;//打印出a-->NaN;

//+/- 先调用numbar
var a = + "abc";
console.log(typeof(a))//打印出numbar


//+ 隐式类型转换调用的是string
var a = "1" + 1;
console.log(typeof(a))//打印出string
//-,*,/,%隐式类型转换调用的是numbar
// <,>,<=,>=如果有数字就调用numbar
var a = "1" < 2;
console.log(typeof(a))//打印出boolean
// == ,!=
var a = "1" == 1;
console.log(typeof(a))//打印出boolean true
//特殊的
undefined>0//打印false
undefined<0//打印false
undefined==0//打印false
null>0//打印false
null<0//打印false
null==0//打印false
undefined == null//打印true
NaN == NaN//不等于任何东西

不发生类型转换

  • === !==(绝对的等于 绝对不等于)
1 !== "1" //true
1 !== 1 //false
NaN === NaN //false

还有一种特殊的

//a在没有定义的情况下
typeof(a);//用console.log打印出undefined


//typeof返回的值类型 都是string类型
typeof(typeof(a))//用console.log打印出string
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,923评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,154评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,775评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,960评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,976评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,972评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,893评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,709评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,159评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,400评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,552评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,265评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,876评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,528评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,701评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,552评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,451评论 2 352

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,231评论 0 4
  •   引用类型的值(对象)是引用类型的一个实例。   在 ECMAscript 中,引用类型是一种数据结构,用于将数...
    霜天晓阅读 1,048评论 0 1
  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,145评论 0 13
  • 这几天刷爆社交软件的老夏和脆鹅中的夏爷爷去世了。一时间大家感叹这是爱情的样貌,是那个年代的爱情。 没几天又...
    茉莉茉莉茶阅读 920评论 0 0
  • 遇见你我变得很低很低,一直低到尘埃里去。——张爱玲 最近接到了两年都未联系过的小Z的来电。很意外。 电话那头的她似...
    羨鱼阅读 2,028评论 4 10