1.jquery ajax中都支持哪些数据类型:xml,html,script,json,jspon,text
https://baike.baidu.com/item/ajax/8425?fr=aladdin
在JQuery中,AJAX有三种实现方式:$.ajax() , $.post , $.get()。
预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
•"xml": 返回 XML 文档,可用 jQuery 处理。
•"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。这种方式是最常见的方式(默认方式),jQuery(这里如果返
回值中有JS代码,并不执行)执行 sucuess回调函数,比如html()、append()等等,这些函数将html代码装载到当前页面的时候才执行其中包
含的js代码,而且该代码只执行一次并不缓存。
•"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有
POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
•"json": json方式和html方式在请求和服务器中完全是一样,请求的返回值实际上都是String对象,有两点不同,第一:html方式的时候并没有限制返回的字符串格式,而json方式的时候,必须符合json协议的规范。第二:html方式请求完成之后没有做任何的操作直接回调sucuess,而json多了一步就是加了eval,执行返回的字符串,看看源码data = eval_r("(" + data + ")");返回json对象。
•"jsonp":jsonp方式的交互方式和js是一样的,本身xmlHttpRequest对象并不能跨域访问,但是script标签的src可以跨域访问,这里就注意两个概念:第一Ajax是不能跨域操作的,第二jQuery的jsonp是可以跨域操作,jsonp到底是什么东西呢?他是一个非官方的定义,目前的规范,需要服务器和客户端进行配合使用
•"text": 返回纯文本字符串
2.JS里判断一个对象oStringObject是否为String:
js中String的初始化有两种方式:1、直接赋值,var str1 = 'abcd'
2、String对象实例化,var str2 = new String('ac');
如果用第二种方式初始化,就不能用typeof来判断,因为此时typeof是判断基本数据类型的,null/[]/{}/对象/函数都属于object
这时可以用instanceof!
var oStringObject = new String('aaa')
alert(typeof oStringObject) // object
alert(oStringObject instanceof String) // true
alert(Object.prototype.toString.call(oStringObject)=='[object String]') // true
后面两种方式都可以来判断oStringObject是不是String!
3.常见的浏览器端的存储技术:
浏览器端:
cookie
WebStorage(localStorage、sessionStorage)
userData
indexedDB
服务器端:
session
4.嵌入在HTML文档中的图像格式:bmp,gif,jpg,png;
计算机存储图片常见的存储的格式:bmp,jpg,tiff,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,raw等。
https://www.cnblogs.com/charmingyj/p/5689777.html
5.CSS3新增属性用法整理:
- box-shadow(阴影效果)
- border-color(为边框设置多种颜色)
- border-image(图片边框)
- text-shadow(文本阴影)
- text-overflow(文本截断)
- word-wrap(自动换行)
- border-radius(圆角边框)
- opacity(透明度)
- box-sizing(控制盒模型的组成模式)
- resize(元素缩放)
- outline(外边框)
- background-size(指定背景图片尺寸)
- background-origin(指定背景图片从哪里开始显示)
- background-clip(指定背景图片从什么位置开始裁剪)
- background(为一个元素指定多个背景)
- hsl(通过色调、饱和度、亮度来指定颜色颜色值)
- hsla(在hsl的基础上增加透明度设置)
- rgba(基于rgb设置颜色,a设置透明度)
http://blog.sina.com.cn/s/blog_a01a36330101doc0.html
6.给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。
Array.prototype.distinct = function() {
var ret = [];
//对原数组进行循环
for (var i = 0; i < this.length; i++)
{
//依次取出数组中的数与原数组进行比较
for (var j = i+1; j < this.length;) {
//splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
if (this[i] === this[j]) {
ret.push(this.splice(j, 1)[0]);
} else {
j++;
}
}
}
return ret;
}
//for test
var arr=['a','b','c','d','b','a','e'];
alert(arr.distinct());
console.log(arr);
7.使mySort()能使传入的参数按照从小到大的顺序显示出来
function mySort() {
var tags = new Array();
for(var i = 0;i < arguments.length;i++) {
tags.push(arguments[i]);
}
tags.sort(function(compare1,compare2) {
return compare1- compare2;
});
return tags;
}
var result = mySort(50,11,16,32,24,99,57,100);
console.info(result);
8.用javascript实现用户登录验证的代码
<script language=javascript>
function checkSubmit()
{
if ((document.form1.name.value)==”)
{
window.alert (‘姓名必须填写’);
document.form1.name.select();
document.form1.name.focus();
return false;
}
else
return true;
}
</script>
<form name=”form1″ onsubmit=”javascript:return checkSubmit()”>
<input type=”text” name=”name”>
</form>