连接运算符 + 】

<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 运算符、控制结构与对象操作的更多相关文章

  1. [Effective JavaScript 笔记] 第4条:原始类型优于封闭对象

    js有5种原始值类型:布尔值.数字.字符串.null和undefined. 用typeof检测一下: typeof true; //"boolean" typeof 2; //&q ...

  2. [Effective JavaScript 笔记] 第8条:尽量少用全局对象

    初学者容易使用全局变量的原因 创建全局变量毫不费力,不需要任何形式的声明(只要在非函数里用var 你就可以得到一个全局变量) 写得代码简单,不涉及到大的项目或配合(写hello world是不会有什么 ...

  3. [Effective JavaScript 笔记]第23条:永远不要修改arguments对象

    arguments对象并不是标准的Array类型的实例.arguments对象不能直接调用Array方法. arguments对象的救星call方法 使得arguments可以品尝到数组方法的美味,知 ...

  4. [Effective JavaScript 笔记]第24条:使用变量保存arguments对象

    迭代器(iterator)是一个可以顺序存取数据集合的对象.其一个典型的API是next方法.该方法获得序列中的下一个值. 迭代器示例 题目:希望编写一个便利的函数,它可以接收任意数量的参数,并为这些 ...

  5. [Effective JavaScript 笔记]第28条:不要信赖函数对象的toString方法

    js函数有一个非凡的特性,即将其源代码重现为字符串的能力. (function(x){ return x+1 }).toString();//"function (x){ return x+ ...

  6. [Effective JavaScript 笔记] 第5条:避免对混合类型使用==运算符

    “1.0e0”=={valueOf:function(){return true;}} 是值是多少? 这两个完全不同的值使用==运算符是相等的.为什么呢?请看<[Effective JavaSc ...

  7. [Effective JavaScript 笔记]第3章:使用函数--个人总结

    前言 这一章把平时会用到,但不会深究的知识点,分开细化地讲解了.里面很多内容在高3等基础内容里,也有很多讲到.但由于本身书籍的篇幅较大,很容易忽视对应的小知识点.这章里的许多小提示都很有帮助,特别是在 ...

  8. javaScript笔记详解(1)

    javaScript基础详解 版权声明 本文原创作者:雨点的名字 作者博客地址:https://home.cnblogs.com/u/qdhxhz/ 首先讲javaScript的摆放位置:<sc ...

  9. JavaScript笔记三两个

    JavaScript定义变量: var num;变量的类型不知道,当给num赋值后,根据值类型来确定类型. var num = 3; //数值类型 var str = "hello,worl ...

随机推荐

  1. android之WakeLock机制浅析

    转自:http://blog.sina.com.cn/s/blog_4ad7c2540101n2k2.html 应用程序耗电的实质,是所启用的硬件在消耗电量.  手机的耗电单元 CPU: 应用处理器( ...

  2. mysql TIMESTAMP详解

    navicat中设置timestamp字段的时间,默认这里填写CURRENT_TIMESTAMP,就是在插入数据的时候按照当前时间插入: 勾选根据当前时间戳更新,表示在UPDATE的时候,会根据当前时 ...

  3. CI中写原生SQL(封装查询)

    封装查询 封装,通过让系统为你组装各个查询语句,能够简化你的查询语法.参加下面的范例: $sql = "SELECT * FROM some_table WHERE id = ? AND s ...

  4. 人生维艰,何不利用开源.NET函数库让工作更轻松

    今天推荐的文章会谈到一些让你工作更轻松的开源.NET函数库. 即使业界有时候认为.NET开源社区不太健康,很多开发团队都更多依赖于微软提供的东西来开发.不过最近在.NET世界中还是诞生了一些优秀和有意 ...

  5. 手机响应式wap网页最佳方案

    wap页面怎么做? 这个问题困扰了我好久,在PC上我们惯用的px单位在手机上根本不适用,即使我们写了<meta name="viewport" content="w ...

  6. ZOJ2539 Energy Minimization(最小割)

    题目大概说,给一个n个格子的矩阵,每个格子都有一个数字pi.求这个函数的最小值: 其中xi的取值是0或1,v0.v1已知,j是和i在矩阵中上下左右相邻的位置且j>i. 这个式子有三个加数组成A+ ...

  7. unity label和图片 gui

    #pragma strict var str:String; //接收外部复制贴图 var imageTexture:Texture; private var imageWidth:int; priv ...

  8. BZOJ4399 : 魔法少女LJJ

    将所有权值离散化,建立权值线段树,维护区间内数字个数以及对数的和,用于比较乘积大小. 对于每个连通块维护一棵权值线段树,合并时用线段树合并. 对于操作3和4,暴力删除所有不合法节点,然后一并修改后插入 ...

  9. BZOJ3498 : PA2009 Cakes

    令三元环(i,j,k)中i>j>k,则每条边只需要从大点连向小点 设d[x]表示从x连出的边的条数 从1到n枚举点i,然后枚举所有与i相连的边(i,x)(x<i) 如果$d[x]\l ...

  10. Android解析XML(PULL方式)

    PULL 的工作原理: XML pull提供了开始元素和结束元素.当某个元素开始时,可以调用parser.nextText从XML文档中提取所有字符数据.当解析到一个文档结束时,自动生成EndDocu ...