Javascript 笔记与总结(2-3)Javascript 运算符、控制结构与对象操作
【连接运算符 + 】
<script>
console.log(1+2+'a'+3+4);
</script>
输出:
3a34
【逻辑运算符】返回的是最早能判断表达式结果的那个值
例①
<script>
var a = false;
var b = 10;
var c = true;
var d = a || b || c;
console.log(d);
console.log(typeof(d));
</script>
输出:
10
number
例②
<script>
var a = true;
var b = false;
var c = a && b;
console.log(c);
console.log(typeof(c));
</script>
输出:
false
boolean
例③(&& 优先级高于 ||)
<script>
var a = true;
var b = 10;
var c = false;
var d = a || b && c;
console.log(d);
console.log(typeof(d));
</script>
输出:
true
boolean
在一些框架中经常利用 || 来做浏览器的兼容,形式:window.a = window.a || window.b
【遍历数组】
<script>
var arr = ['hello', 'world', 2015];
for(var i=0; i<arr.length; i++){
console.log(arr[i]);
}
</script>
输出:
hello
world
2015
【遍历对象】
<script>
var obj = {a:'hello', b:'world', c:2015};
for(var key in obj){
console.log(key+":"+obj[key]);
}
</script>
输出:
a:hello
b:world
c:2015
【对象操作】
在用数字、字符串等原生类型调用属性的时候,js 会瞬间把这些原生类型包装成对象
例 ①
<script>
var str = "helloworld";
console.log(str.length);
</script>
输出 10
例 ②
<script>
var str = "helloworld";
console.log(str.substr(2,3));
</script>
输出:llo
例 ③
<script>
var arr = ['阿森纳', '切尔西', '曼城', '利物浦'];
console.log(arr.join(',')) var str = "php,java,python";
console.log(str.split(','));
</script>
输出:
阿森纳,切尔西,曼城,利物浦
["php", "java", "python"]
Javascript 笔记与总结(2-3)Javascript 运算符、控制结构与对象操作的更多相关文章
- [Effective JavaScript 笔记] 第4条:原始类型优于封闭对象
js有5种原始值类型:布尔值.数字.字符串.null和undefined. 用typeof检测一下: typeof true; //"boolean" typeof 2; //&q ...
- [Effective JavaScript 笔记] 第8条:尽量少用全局对象
初学者容易使用全局变量的原因 创建全局变量毫不费力,不需要任何形式的声明(只要在非函数里用var 你就可以得到一个全局变量) 写得代码简单,不涉及到大的项目或配合(写hello world是不会有什么 ...
- [Effective JavaScript 笔记]第23条:永远不要修改arguments对象
arguments对象并不是标准的Array类型的实例.arguments对象不能直接调用Array方法. arguments对象的救星call方法 使得arguments可以品尝到数组方法的美味,知 ...
- [Effective JavaScript 笔记]第24条:使用变量保存arguments对象
迭代器(iterator)是一个可以顺序存取数据集合的对象.其一个典型的API是next方法.该方法获得序列中的下一个值. 迭代器示例 题目:希望编写一个便利的函数,它可以接收任意数量的参数,并为这些 ...
- [Effective JavaScript 笔记]第28条:不要信赖函数对象的toString方法
js函数有一个非凡的特性,即将其源代码重现为字符串的能力. (function(x){ return x+1 }).toString();//"function (x){ return x+ ...
- [Effective JavaScript 笔记] 第5条:避免对混合类型使用==运算符
“1.0e0”=={valueOf:function(){return true;}} 是值是多少? 这两个完全不同的值使用==运算符是相等的.为什么呢?请看<[Effective JavaSc ...
- [Effective JavaScript 笔记]第3章:使用函数--个人总结
前言 这一章把平时会用到,但不会深究的知识点,分开细化地讲解了.里面很多内容在高3等基础内容里,也有很多讲到.但由于本身书籍的篇幅较大,很容易忽视对应的小知识点.这章里的许多小提示都很有帮助,特别是在 ...
- javaScript笔记详解(1)
javaScript基础详解 版权声明 本文原创作者:雨点的名字 作者博客地址:https://home.cnblogs.com/u/qdhxhz/ 首先讲javaScript的摆放位置:<sc ...
- JavaScript笔记三两个
JavaScript定义变量: var num;变量的类型不知道,当给num赋值后,根据值类型来确定类型. var num = 3; //数值类型 var str = "hello,worl ...
随机推荐
- Jpush推送模块
此文章已于 14:17:10 2015/3/24 重新发布到 鲸歌 Jpush推送模块 或以上版本的手机系统. SDK集成步骤 .导入 SDK 开发包到你自己的应用程序项目 • 解压 ...
- 虚析构函数(√)、纯虚析构函数(√)、虚构造函数(X)
from:http://blog.csdn.net/fisher_jiang/article/details/2477577 一. 虚析构函数 我们知道,为了能够正确的调用对象的析构函数,一般要求具有 ...
- C语言 给字符数组赋值的方法
typedef struct _tagTESTCHAR { char szTest[30];}TESTCHAR , *PTESTCHAR; int main(int argc, char* argv[ ...
- Ubuntu16.04 安装openjdk-7-jdk
Ubuntu16.04 安装openjdk-7-jdk sudo apt-get install openjdk-7-jre 或者sudo apt-get install openjdk-7-jdk ...
- 12、uwp 开发的零碎总结
1.在给位 “修正版本号”(Major.Minor.Build.Revision)不能修改. 后, 商店上传失败,描述信息为:Apps are not allowed to have a Versio ...
- Windows Phone8 遇见的问题
1.公司的无线路由可以自动分发ip地址,模拟器可以自动获取ip,进行连接.宿舍的无线路设置了DHCP 不能自动分发ip地址,模拟器连接不到ip,上不去网,我就去hyper-v 管理器里修改了静态mac ...
- Hibernate 分页时 Long 无法转化成Integer类型 异常
转自:http://loquat.iteye.com/blog/818547 报错:java.lang.Long cannot be cast to java.lang.Integer Long ...
- PL/SQL Developer 连接新数据库
1 2 3
- CC2540开发板学习笔记(五)——串口通信
(一)串口发送 一.实验现象: 开发板实现功能发送 二.实验过程 1.PL2303 USB转串口电路图 2.串口发送 (1)查看用户手册有: UART0 对应的外部设备 IO 引脚关系为: P0_2 ...
- 矩阵连乘积 ZOJ 1276 Optimal Array Multiplication Sequence
题目传送门 /* 题意:加上适当的括号,改变计算顺序使得总的计算次数最少 矩阵连乘积问题,DP解决:状态转移方程: dp[i][j] = min (dp[i][k] + dp[k+1][j] + p[ ...