javascript学习笔记_浅谈基础语法,类型,变量


Posted in Javascript onSeptember 19, 2016

基础语法、类型、变量

非数字值的判断方法:(因为Infinity和NaN他们不等于任何值,包括自身)

1、用x != x ,当x为NaN时才返回true;

2、用isNaN(x) ,当x为NaN或非数字值时,返回true;

3、用isFinity(x),在x不是NaN、Infinity、-Infinity时返回true;

虽然(字符串、数字、布尔值)不是对象,他们的属性是只读的,但也可以像操作对象一样来引用他们的属性和方法,原理:

javascript构造一个(String、Number、Boolean)的临时对象(称为包装对象),然后通过这个临时对象来调用它的属性和方法,这些属性、方法改变的只是这个临时对象,随后这个临时对象会被销毁,所做的改变不影响原数据;

可以显式的构造一个包装对象,它的值和原数据相等 ‘==',但类型不同 ‘==='

数字a 转 字符串:

a.toString(n) //n表示进制

a.toFixed(i) a.toExponential(i) a.toPrecision(j) //i为小数位数,j为要显示位数

字符串s 转 十进制数字:(忽略前置的空格,尽可能多的转换数字,忽略后面的非数字内容,其中'0X'、'0x'开头的则把它当着16进制数来转换)

parseInt(s,[n]) //n表示进制,可选参数,把s当着n进制数来转为十进制数

parseFloat(s,[n])

对象 自动转 字符串步骤:

1.若有toString()方法,且它能返回原始值,则调用它,将返回的原始值转字符串;

2.若第一步无效,则调用valueOf(),将返回的原始值转字符串;

3.前两不均无效,则抛出类型错误异常;

对象 自动转 数字步骤:

1.若有valueOf(),则调用它,将返回的原始值转数字,可返回这个数字;

2.若1无效,则尝试调用toString(),将返回的原始值转数字并返回该数字;

3.若1、2均无效,则抛出类型错误异常;

Date对象是个例外

变量声明提前:

调用未声明的变量,编译时会把变量的声明部分提前,而把初始化部分留在原地;

(重复声明的变量,局部的将覆盖外部的)

var s1 = 'ggggg';
function f() {
console.log(s1); //s1 == undefined
var s1 = 'cccccc';
console.log(s1); //s1 == 'cccccc'
}

位运算:& | ^ ~

&:按位与,对左右两个整型操作数执行AND操作,仅当对应位都为1时,结果为1;

|:按位或,对应位有一个为1,则结果为1;

^:按位异或,对应位一样则为0,不一样则为1;

~:按位取反,一元运算符,所有位取反,相当于改变符号并减1;

(n是0~31之间)

<<n:所有位左移n位,即将值乘以2的n次方,舍弃最左n位,用0来补充右边n位;

>>n:所有位右移n位,忽略右边溢出位,填补左边位有原操作数决定,结果相当于除2的n次方,舍弃余数,7>>1=3 , -7>>1=-4

<<<n:同<<,只是用0来填补左边位

字符串之间的比较大小:

JavaScript字符串是一个由16位整数值组成的字符系列,字符串的比较的是它们的字符的数值,大小写的字符的数值不同;

比较运算符偏爱数字,只要有一个操作数为数字,就做数字运算,只有当两个都为字符串时,才做字符串比较
 
而‘+'运算符则偏爱字符串,只要有一个操作数为字符串,就做字符串连接运算

x in p

检查对象p内是否存在属性x,包括方法

a instanceof A

检查对象a是否是类A的一个实例,包含对其父类的检测
 
假值:false、 null、 undefined、 0 、-0 、NaN ""

真值:除了以上的值,其他值均为真值;

对象:除了字符串、数字、true、false、null、undefined之外,其他值都是对象!

以上就是小编为大家带来的javascript学习笔记_浅谈基础语法,类型,变量的全部内容了,希望对大家有所帮助,多多支持三水点靠木~

Javascript 相关文章推荐
javascript脚本调试方法小结
Nov 24 Javascript
JS的反射问题
Apr 07 Javascript
jquery队列queue与原生模仿其实现方法分享
Mar 25 Javascript
JS实现很酷的水波文字特效实例
Feb 26 Javascript
JavaScript页面模板库handlebars的简单用法
Mar 02 Javascript
深入理解JavaScript系列(29):设计模式之装饰者模式详解
Mar 03 Javascript
javascript实现拖动元素交换位置
Nov 29 Javascript
JavaScript中的boolean布尔值使用学习及相关技巧讲解
May 26 Javascript
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
Jun 26 jQuery
Angular6封装http请求的步骤详解
Aug 13 Javascript
vue实现拖拽的简单案例 不超出可视区域
Jul 25 Javascript
javascript设计模式 ? 单例模式原理与应用实例分析
Apr 09 Javascript
js中用cssText设置css样式的简单方法
Sep 19 #Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
Sep 19 #Javascript
基于jQuery实现中英文切换导航条效果
Sep 18 #Javascript
jQuery EasyUI常用数据验证汇总
Sep 18 #Javascript
jQuery EasyUI封装简化操作
Sep 18 #Javascript
基于jQuery ligerUI实现分页样式
Sep 18 #Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
Sep 18 #Javascript
You might like
DedeCMS dede_channeltype表字段注释
2010/04/07 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
php fsockopen伪造post与get方法的详解
2013/06/14 PHP
php设置页面超时时间解决方法
2015/09/22 PHP
浅谈htmlentities 、htmlspecialchars、addslashes的使用方法
2016/12/09 PHP
js 图片等比例缩放代码
2010/05/13 Javascript
Javascript的并行运算实现代码
2010/11/19 Javascript
jquery提取元素里的纯文本不包含span等里的内容
2013/09/30 Javascript
jquery 自定义容器下雨效果可将下雨图标改为其他
2014/04/23 Javascript
常用jQuery选择器总结
2014/07/11 Javascript
jQuery实现友好的轮播图片特效
2015/01/12 Javascript
jQuery返回定位插件详解
2017/05/15 jQuery
jQuery+ajax实现修改密码验证功能实例详解
2017/07/06 jQuery
VueJs组件prop验证简单介绍
2017/09/12 Javascript
javascript、php关键字搜索函数的使用方法
2018/05/29 Javascript
基于Vue实现微信小程序的图文编辑器
2018/07/25 Javascript
JS集合set类的实现与使用方法示例
2019/02/01 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
jQuery实现移动端扭蛋机抽奖
2020/11/08 jQuery
PyQt5每天必学之工具提示功能
2018/04/19 Python
python斐波那契数列的计算方法
2018/09/27 Python
解决python字典对值(值为列表)赋值出现重复的问题
2019/01/20 Python
python and or用法详解
2019/06/26 Python
Django Admin中增加导出CSV功能过程解析
2019/09/04 Python
Python谱减法语音降噪实例
2019/12/18 Python
Python列表解析操作实例总结
2020/02/26 Python
Python 中Operator模块的使用
2021/01/30 Python
很酷的HTML5电子书翻页动画特效
2016/02/25 HTML / CSS
德国体育用品网上商店:SC24.com
2016/08/01 全球购物
AJax面试题
2014/11/25 面试题
化学专业毕业生自荐信
2013/11/15 职场文书
总经理司机岗位职责
2014/02/06 职场文书
《听鱼说话》教学反思
2014/02/15 职场文书
财务人员岗位职责
2015/02/03 职场文书
MySQL中in和exists区别详解
2021/06/03 MySQL