码迷,mamicode.com
首页 > Web开发 > 详细

js基础区别

时间:2018-09-23 15:08:03      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:OLE   一个   长度   拆分   参数   进制   数据   对象   数值   

// console.log(null == undefined);
// 布尔类型有true和false
// if(true){
// console.log("hello world");
// }
// true是所有的非0的数字都可以划等号
// if(-10){
// console.log("hello world");
// }
// console.log(Boolean(""));false
// console.log(Boolean(" "));true
// if(`里面有内容就不算空,就算是一个空格也不是空,有内容就算true,没有就是false`){
// console.log(‘hello world‘)
// } false
// “” ‘’ `` 0 -0 NaN false null undefined都是false
// console.log(0b101);二进制前面加0b
// console.log(0101);八进制前面加0
// console.log(0x101);十六进制前面加0x
// 实数
// 3.14*10 的5次方;
// 3.14e+5
// 负的次方就在e后面-次方数
// let a=NaN+10;
// console.log(a);返回类型就是NAN类型
// console.log(isNaN(""));空字符串也是数值类型,是非nan类型
// NaN和任何值都不相等,包括他自己本身也不相等
// 非数返回ture 如果是一个数 返回类型false 并且能够隐式转换为数字,也是按照数字处理都是false
// NaN属于number类型
// console.log(Number(‘123‘));123
// console.log(Number(‘123abc‘));NaN
// parseInt有两个参数,后面的参数可以控制多少进制,前面的参数是第二个参数进制下的数,最后将它转化为十进制,
// console.log(parseInt(‘123abc‘));123
// console.log(parseInt(‘abc123‘));NaN
// console.log(parseInt("10",8));八进制
// console.log(parseInt("101",8));
// console.log(parseInt("AF"));NaN
// console.log(parseInt(""));NaN
// console.log(parseInt("AF",16));十六进制 abcdef是10到15的数
// parseFloat()将非数转化为浮点数只能解析十进制只有一个参数;
// console.log(parseFloat("3.14"));
// console.log(parseFloat("123acd"));123
// console.log(parseFloat("abc123"));NaN
// console.log(parseFloat("2.15e+2"));215
// console.log(parseInt("12.3#"));12
// console.log(parseFloat("12.3#"));12.3
// console.log(Number(""));如果字符串是空的,则将其转化为0;
// console.log(isFinite(NaN));false
// console.log(Number.isFinite(NaN));false
// 字符串
// console.log("1"+NaN);1NaN
// console.log(1+NaN);NaN;

// let i=5;
// console.log(i.toString());
// let j=null;和undefined可以拼接一个空字符串或者下面的方法变为字符串,直接写是不能的,
// console.log(String(j),typeof String(j));null string
// 多行字符串
// let i=‘hello‘;
// let j=`hello`;
// let a=`hei
// is
// this`;
// console.log(a);
// let name = "xiaozhou";
// 需要加上一个${}占位符
// console.log(`hello,${name}`);hello,xiaozhou
// console.log(name.length);字符串的长度
// let a="xiaozhou";
// let b=`woshi${a}`;
// console.log(b);
// 简单数据类型不能再拆分,复杂的类型可以拆分为多个简单数据类型
// 复杂值:数组 对象
// let a=10;
// let b=a;
// console.log(a,b);10 10
// a=5;
// console.log(a,b);5 10
// let obj={
// name :‘xiaozhou‘,
// age : ‘20‘,
// gender:‘man‘
// };
// let obj2=obj;是将obj的地址赋值给了obj2;只有一个是复杂类型,才会将地址赋值,
// console.log(obj);
// console.log(obj2);
// obj.name=‘xiaoxiaozhou‘;
// console.log(obj);
// console.log(obj2);
// 栈:简单值和复杂值里面东西堆的地址 堆:复杂值存放东西的地方
// 简单值比的是指,复杂值比得是地址,地址不会相同
// 对于复杂值,可以为他添加属性和方法,也可以改变和删除属性和方法;但简单值不可以添加属性和方法
// let str = ‘test‘;简单值
// str.abc = true;不可以添加
// console.log(str.abc);undefined
// let obj = {};复杂值
// obj.abc = true;添加可以
// console.log(obj.abc);true
// 类型转化,在算数运算的时候,数据进行计算(-*/%);
// 有字符串的运算时候+是拼接
// 强制转换的技巧:
// 转换为字符串可以直接拼接上一个一个空字符串;
// 转换为bool类型在数据前面写一个!(非的意思)
// 转换为数值:数据类型*或者/1
// 强制转换
// console.log(‘100‘/1);
// console.log(typeof (‘100‘/1));
// 隐式转换
// console.log(‘100‘);只是隐式转换为100
// console.log(typeof(‘100‘));出来的类型还是字符串
// console.log(5/2);2.5 解释性
// console.log(5%2);1
// console.log(2**3);2的三次方
// let a = 2;
// let b = 10;
// let c = --a + b;
// let d = a + b;
// console.log(a,b,c,d);//1 10 11 11
// let a=10;
// --a;
// console.log(a);
// console.log("c" > "b");//true
// console.log("c" > "box");//true
// ==和===
// console.log(5=="5");true
// console.log(5==="5")false
// &&
// let a=true;
// let b=a&&c;
// console.log(b);会报错, 因为与&&的短路现象,第一个为真就进入第二个,返回第二个操作数
// let a=false;
// let b=a&&c;
// console.log(b);false, 在与&&的短路现象,第一个为假直接返回第一个操作数,不会进入第二个操作数
// let a=true;
// let b=a||c;
// console.log(b);true 在或||的短路现象中,第一个为真就直接返回第一个操作数,不会进入第二个操作数
// let a=false;
// let b=a||c;
// console.log(b);报错, 在或||的短路现象中,第一个为假的话会进入第二个操作数,直接返回第二个操作数



js基础区别

标签:OLE   一个   长度   拆分   参数   进制   数据   对象   数值   

原文地址:https://www.cnblogs.com/xiaozhou619/p/9692445.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!