
正文
javascript笔记,javascript笔记本手机充值
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
笔记:JS设置CSS样式的几种方式
1、直接更改,比如:
xID.style.display = "block"; // 更改display属性,会覆盖css中的定义。
xID.style.display = ""; // 取消js更改display属性,以css样式为准。
这里的xID,是通过id获取的标签。当然,也可能是通过tagName之类的获取的标签。
这种方式,简单直接。但是要修改大量的样式的时候,不适合。所以,我更推荐第二种方式。
2、更改类名
xID.className = "xx yy";
如果有多个类,就用空格隔开。前提,在样式中要有已有类的定义。比如这里的xx和yy类,在css中应该是写好的。
这种方式把所有的样式写在了css文件中,适合更改较多的样式以及炫酷的样式。js就只做一件事情:改类。至于这个类会把标签变成什么样子,交给css吧。
通过jquery也可以达到如上的效果:
$("#xID").css({
fontSize:"12px",
display:"block"
}); // 直接更改样式
$("#xID").addClass("xx"); // 增加删除类
$("#xID").removeClass("xx");
相关问答
Q1: 《web前端笔记7》js字符—获取、查找、遍历、提取、替换方法总结
(1)字符串就是零个或多个排在一起的字符。
(2)放在单引号或双引号之中。 'abc' "abc"。
(3)单引号字符串的内部,可以使用双引号。
(4)双引号字符串的内部,可以使用单引号。
(5)反引号`` :反引号允许跨行。
反引号允许字符串跨越多行并可以使用
${…} 在字符串中嵌入表达式。
(1)charAt 方法返回指定位置的字符,参数是从0开始编号的位置。
找一个字符串中的某个位置是那个字符串。
charCodeAt:返回字符串指定位置的 Unicode 码点(十进制表示)
(2)[]
字符串可以被视为字符串数组,因此可以用数组的方括号运算符,用来返回某个位置的字符
但是字符串只是数组的相似性而已实际上、没办法改变字符串中的某个字符
length 只是返回了字符串的长度,该属性没办法改变
字符串使用Unicode字符集,js内部所有的都是Unicode表示的。
JavaScript中的字符串使用的是 UTF-16 编码。
toLowerCase() 和 toUpperCase()方法可以改变大小写。
String对象是js原生提供的三个包装对象之一。用来生成字符串对象。
(1)构造函数
字符串对象是一个类数组对象,很像数组,但不是真正的数组。
(2)将任意的值转成字符
用于连接两个字符串,返回一个新字符串,不改变原字符串。
从原字符串取出子字符串并返回,不改变原字符串。
它的第一个参数是子字符串的开始位置,
第二个参数是子字符串的结束位置(不含该位置)。
如果省略第二个参数,则表示子字符串一直到原字符串结束。
用于从原字符串取出子字符串并返回,不改变原字符串,跟slice方法很相像。
它的第一个参数表示子字符串的开始位置,
第二个位置表示结束位置(返回结果不含该位置)
如果省略第二个参数,则表示子字符串一直到原字符串结束。
区别:slice 和 substring的区别?
slice:
如果参数是负值,表示从结尾开始倒数计算的位置,即该负值加上字符串长度。
如果第一个参数大于第二个参数(正数情况下),slice()方法返回一个空字符串。
substring:
如果第一个参数大于第二个参数,substring方法会自动更换两个参数的位置。
如果参数是负数,substring方法会自动将负数转为0。
由于这些规则违反直觉,因此不建议使用substring方法,应该优先使用slice。
总结:获取子字符串,使用 slice 或 substring。
用于确定一个字符串在另一个字符串中第一次出现的位置,
返回结果是匹配开始的位置。如果返回-1,就表示不匹配。
indexOf方法还可以接受第二个参数,表示从该位置开始向后匹配。
lastIndexOf
lastIndexOf方法的用法跟indexOf方法一致,主要的区别是lastIndexOf从尾部开始匹配,indexOf则是从头部开始匹配。
总结:查找子字符串时,使用 indexOf 或 includes/startsWith/endsWith 进行简单检查。
endsWith 用来判断当前字符串是否是以另外一个给定的子字符串“结尾”的,根据判断结果返回 true 或 false。
用于去除字符串两端的空格,返回一个新字符串,不改变原字符串。
toLowerCase方法用于将一个字符串全部转为小写,
toUpperCase则是全部转为大写。
它们都返回一个新字符串,不改变原字符串
split方法按照给定规则分割字符串,返回一个由分割出来的子字符串组成的数组。
如果分割规则为空字符串,则返回数组的成员是原字符串的每一个字符。
如果省略参数,则返回数组的唯一成员就是原字符串。
split方法还可以接受第二个参数,限定返回数组的最大成员数。
返回一个新字符串,表示将原字符串重复n次。
字符串补全长度的功能。如果某个字符串不够指定长度,
会在头部或尾部补全。padStart()用于头部补全,padEnd()用于尾部补全。
trimStart()消除字符串头部的空格,
trimEnd()消除尾部的空格。
返回一个由替换值(replacement)替换部分或
所有的模式(pattern)匹配项后的新字符串。
模式可以是一个字符串或者一个正则表达式,
替换值可以是一个字符串或者一个每次匹配都要调用的回调函数。
如果pattern是字符串,则仅替换第一个匹配项.
web前端笔记4-有讲 如果感兴趣、请参考之前文章
Q2: JavaScript学习笔记之数组基本操作示例
本文实例讲述了JavaScript学习笔记之数组基本操作。分享给大家供大家参考,具体如下:
一、数组定义
1、定义
vara=[1,2,3]
vara=newArray(1,2,3);
2、长度
返回长度
script
vara=[1,2,3,4,5,6];
alert(a.length);
/script
设置长度
script
vara=[1,2,3,4,5,6];
a.length=2;
alert(a);
/script
二、数组连接
script
vara=[1,2,3];
varb=[4,5,6];
alert(a.concat(b));
alert(b.concat(a));
/script
三、数组排序
sort()函数
默认情况是把数组元素按字符串排序
例子
01
script
vararr=['float','width','alpha','zoom','left'];
arr.sort();
alert(arr);
/script
例子02
vararr=[12,8,99,19,112];
arr.sort();
alert(arr);
例子03
sort()函数的改进
vararr=[12,8,99,19,112];
arr.sort(function(n1,n2){
returnn1-n2;
});
alert(arr);
四、数组连接
1、两个数组间的连接:contact()
script
vara=[1,2,3];
varb=[4,5,6];
alert(a.concat(b));
alert(b.concat(a));
/script
2、数组元素间的连接:join()
script
vararr=[1,2,3,4];
alert(arr.join('--p'));
/script
五、数组元素添加、删除
1、数组尾部的添加、删除
尾部添加:push(value)
例子01
script
vara=[1,2,3];
a.push(4);
alert(a);
/script
尾部删除:pop()
例子02
script
vara=[1,2,3];
a.pop();
alert(a);
/script
2、数组头部的添加、删除
头部添加
unshift(value)
例子01
script
vararr=[1,2,3];
arr.unshift(0)
alert(arr);
/script
头部删除:shift()
例子02
script
vararr=[1,2,3];
arr.shift();
alert(arr);
/script
3、数组------splice()
删除数据
例子01
script
vararr=[1,2,3,4,5,6];
//splice(起点,长度)
arr.splice(2,3);
alert(arr);
/script
插入数据
例子02
script
vararr=[1,2,3,4,5,6];
//插入数据splice(起点,长度,元素)
arr.splice(2,0,'a','b','c');
alert(arr);
/script
替换数据
例子02
script
vararr=[1,2,3,4,5,6];
//替换数据
arr.splice(2,2,'a','b');
alert(arr);
/script
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:测试上述代码运行结果。
更多关于JavaScript相关内容还可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript字符与字符串操作技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript排序算法总结》、《JavaScript查找算法技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
您可能感兴趣的文章:js数组与字符串的相互转换方法js删除数组元素、清空数组的简单方法(必看)js数组循环遍历数组内所有元素的方法JS
array
数组详解js数组去重的三种常用方法总结JavaScript从数组中删除指定值元素的方法JS数组的遍历方式for循环与for...in向JavaScript的数组中添加元素的方法小结JS删除数组里的某个元素方法javascript
数组的定义和数组的长度Js数组的操作push,pop,shift,unshift等方法详细介绍
Q3: Javascript学习笔记 delete运算符
一、语法
delete后面的表达式必须给出一个属性的引用,比如
var
o
=
{a:1};
delete
o.a;
//此处o.a是对象o的属性a的引用
只有在with语句里才能使用单独的属性名
复制代码
代码如下:
with(o){
delete
a;
}
二、delete的返回值
delete是普通运算符,会返回true或false。规则为:当被delete的对象的属性存在并且不能被删除时
返回false,否则返回true。
这里的一个特点就是,对象属性不存在时也返回true,所以返回值并非完全等同于删除成功与否。
复制代码
代码如下:
var
o
=
{a:1};
delete
o.a;
//返回true
var
b
=
2;
delete
b;//返回false,ECMA规则约定:使用var和function声明的变量不可以被delete
三、哪些情况下不允许delete
上例提到的var和function声明的变量不可以被delete,但隐式声明可以被删除
复制代码
代码如下:
function
c(){return
12;}
delete
c;//返回false
d
=
function(){return
12;}
delete
d;//返回true
不能delete从原型链上继承的属性,但可以删除原型链上的属性
复制代码
代码如下:
function
Foo(){}
Foo.prototype.bar
=
42;
var
foo
=
new
Foo();
delete
foo.bar;
//
返回true,但并没有起作用
alert(foo.bar);
//
alerts
42,
属性是继承的
delete
Foo.prototype.bar;
//
在原型上删除属性bar
alert(foo.bar);
//
alerts
"undefined",
属性已经不存在,无法被继承
四、特例
复制代码
代码如下:
eval执行的代码中如有通过var和function声明的变量,可以被delete
eval("var
a=1");
delete
a;
alert(a);
//报未定义错误
如果声明是在eval执行代码中的闭包内进行的,则变量不能被delete
eval("(function(){var
a=1;delete
a;
return
a;})()");//1
五、delete
数组元素
从数组中delete其元素并不会影响数组的长度
复制代码
代码如下:
var
arr
=
['yuyin','suhuan','baby'];
delete
arr[0];
alert(arr.length);//alert
3
被delete的键值已经不属于数组,但却还是可以被访问,其值为undefined。
复制代码
代码如下:
var
arr
=
['yuyin','suhuan','baby'];
delete
arr[0];
in
arr;
//
false
alert(arr[0]);//undefined
arr[0]
===
undefined;//true
对比直接将键值赋值undefined
复制代码
代码如下:
var
arr
=
['yuyin','suhuan','baby'];
arr[0]
=
undefined;
in
arr;
//
true
alert(arr[0]);//undefined
arr[0]
===
undefined;//true
可以看出delete
操作只是将键值这个属性从数组中删除了,数组本身也是对象,这个情况好理解的。如果需要保留键值,可以用undefined赋值。
Q4: 公众号h5中使用微信JS-SDK(个人笔记)
通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力,为微信用户提供更优质的网页体验。
例子为在vue中使用微信JS-SDK,步骤如下:
先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
备注:登录后可在“开发者中心”查看对应的接口权限。
插件方式:
引入js文件方式:
在需要调用JS接口的页面引入如下JS文件,(支持https):
如需进一步提升服务稳定性,当上述资源不可访问时,可改访问: (支持https)。
挂载到Vue原型
与使用 JS-SDK 配置方式相同,所有需要使用开放标签的页面必须先注入配置信息,并通过openTagList字段申请所需要的开放标签,否则将无法使用(同一个 url 仅需调用一次)。开放标签的申请和 JS 接口的申请相互独立,因此是可以同时申请的。
配置成功之后,就可以使用相关的api了。例子为微信支付。
3.分享出去的是链接,不是卡片的原因及解决方案:
原因: 微信开放全域名访问后出现的限制。
解决方法:
这会导致别人通过分享卡进来的页面不是自己配置的页面。
解决办法: 把路由hash模式改成history模式。(让后端把匹配不到的页面重定向到首页)
开发者需要配合使用微信开放平台提供的 SDK 进行一次性订阅消息授权请求接入。正确接入 SDK 后,开发者移动应用会在终端本地 拉起微信应用进行订阅消息授权 ,微信用户确认后微信将拉起开发者移动应用,并带上授权用户 openid 等信息。
使用方式: 引导用户打开 ;appid=wxaba38c7f163da69bscene=1000template_id=1uDxHNXwYQfBmXOfPJcjAS3FynHArD8aWMEFNRGSbCcredirect_url=http%3a%2f%2fsupport.qq.comreserved=test#wechat_redirect 链接。
可拉起微信打开一次性消息订阅授权页:
使用方式:
如需添加参数,可在redirect_uri后面进行拼接,授权成功之后会带回来。
其他问题请参考:








