日记整理---->2016-11-01
这里我们整理一下项目的流程,一般来说做一个模块之前。会有需求文档、页面原型和接口文档。
一、 js获取radio的值
- 页面的html代码:
<ul class="list-group" style="border:1px solid rgb(238,238,238);border-radius:0.5em; margin-left: 1em; margin-right: 1em;" > <li class="list-group-item clearfix">婚姻关系 <input type="radio" id="isMarried" name="marryStatus" v-click="changeMarryStatus(0)" value="0" /> 单身 <input type="radio" id="isMarried" name="marryStatus" v-click="changeMarryStatus(3)" value="3" checked="true"/> 已婚 </li> </ul>
- js代码得到radio选中的value值:
var marrayType = $("input[name='marryStatus']:checked").val();
二、 js获取checkbox是否选中
- 页面的html代码:
<input type="checkbox" id="spouseAuthorized" name="spouseAuthorized" style="margin-left:15px; width: auto;">
- js的代码,isChecked是true或者是false。
var isChecked = $('#spouseAuthorized').is(':checked'); if (isChecked == false) { $smart.alert("没有勾选授权按钮。"); return; }
三、parseFloat和toFixed方法
以下代码如下:下列的money2.toFixed(2)返回的是字符类型,所以'6'是大于'1'的。
function testMoney() { var money1 = parseFloat("13000.568"); var money2 = parseFloat("6000.235"); alert(money2 > money1); // false alert(money2.toFixed(2) > money1.toFixed(2)); // true }
四、null的强制转换
将null转换成String类型是不报错的
Object object = null; String str = (String)object; System.out.println(str); // null
五、scannner的使用
scanner中的next和nextLine方法的区别
Scanner scanner = new Scanner(System.in); System.out.println(scanner.next()); System.out.println(scanner.nextLine()); System.out.println(scanner.nextLine()); scanner.close();
运行的效果如下:
next方法是读取以空白字符为分割的,nextLine是以换行符为分隔符的。
六、nodejs的模块化使用
代码结构如下:
- 定义一个模块,实质就是一个js文件,记为moduls.js。
var name; exports.setName = function(thyName) { name = thyName; }; exports.sayHello = function() { console.log('Hello ' + name); };
- 在hello.js中使用上述的模块:
var myModule = require('./module'); myModule.setName('chenhui'); myModule.sayHello();
运行的效果如下:
ps:require 不会重复加载模块,也就是说无论调用多少次 require, 获得的模块都是同一个。如下的hello.js代码:
var hello1 = require('./module'); hello1.setName('BYVoid'); var hello2 = require('./module'); hello2.setName('BYVoid 2'); hello1.sayHello();
运行后发现输出结果是 Hello BYVoid 2。
七、将对象封装到模块当中
- 定义一个对象的模块module2.js:
function Hello() { var name; this.setName = function(thyName) { name = thyName; }; this.sayHello = function() { console.log('Hello ' + name); }; }; module.exports = Hello;
- 在hello2.js中使用该模块中的对象:
var Hello = require('./module2'); hello = new Hello(); hello.setName('Linux'); hello.sayHello();
运行的结果如下:
八、javascript的一些总结
- 在javascript中不存在块级的作用域,在循环内部定义的变量可以在外部使用。
var count = 10; for (var i = 0; i < count; i++) {} console.log(i); // 10
- javascript中的for....in的使用,它输出的属性名的顺序是不可预测的。
var jsonObject = { "name": "huhx", "lover": "chenhui" }; for (var info in jsonObject) { console.log(info + ", " + jsonObject[info]); } // name, huhx // lover, chenhui
如果是jsonObject.info,那么输出的是undefined。
- switch语句在比较值时使用的是全等操作符,没有发生类型转换。switch的语句可以使用任何的数据类型,case的值可以是变量、常量和表达式。
PE中涉及到的配置文件比较多,那么它们的加载顺序到底是什么样子呢?现在的一个错觉就是,在pweb中的内容优先级最高,这样的理解暂时没有找到依据。
在js中快速查找函数名:ctrl+R快捷键。
- a标签的形式流。
a标签有一个download属性,可以指定下载文件的名称。href可以是一个文件流,也可以是请求返回的文件流。当然传统意义上面的文件路径,其原理还是一个请求返回的文件流。
友情链接
作者:
huhx
出处: www.cnblogs.com/huhx
格言:你尽力了,才有资格说自己的运气不好。
版权:本文版权归作者huhx和博客园共有,欢迎转载。未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
出处: www.cnblogs.com/huhx
格言:你尽力了,才有资格说自己的运气不好。
版权:本文版权归作者huhx和博客园共有,欢迎转载。未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。