legend---十二、js中的js语句和函数和ready函数的关系是什么
一、总结
一句话总结:
函数和全局变量不必放到ready函数中
语句(调用函数和全局变量)的必须放到ready函数中
1、在物品表的物品的id会时常发生变化的情况下,怎么找到特定的物品方便?
可以再给物品表添加一个特殊字段,用来唯一标识物品即可,
写逻辑的时候就用这个特殊字段来写逻辑
2、js中如何求当前时间?
var time_now=parseInt(new Date().getTime()/1000);
除1000因为js中的时间是毫秒,多了3位
3、写出业务逻辑伪代码的好处是什么?
可以方便写函数,而且发现很多功能都是重复的
比如重置时间,比如给用户不同的类型的装备
<?php
namespace app\index\model\weapon;
use think\Model; use app\index\model\Common; //武器工厂
interface WeaponFactory
{
//生产武器给用户
public static function createWeapon($ur_id);
} //低级武器工厂:用来生产低级武器
class LowWeaponFactory implements WeaponFactory{
//可获取白装70%和绿装30%,4小时可免费领取一次
public static function createWeapon($ur_id){
$ramdom_num=mt_rand(1,100);
if($ramdom_num<=70){
//给这个用户发放白装
//将时间重置
}else{
//给这个用户发放绿装
//将时间重置
}
}
} //中级武器工厂
class MidWeaponFactory implements WeaponFactory{
//可获取白装30%和绿装55%和蓝装15%,8小时可免费领取一次
public static function createWeapon($ur_id){
$ramdom_num=mt_rand(1,100);
if($ramdom_num<=30){
//给这个用户发放白装
//将时间重置
}else if($ramdom_num<=85){
//给这个用户发放绿装
//将时间重置
}else{
//给这个用户发放蓝装
//将时间重置
}
}
} //高级武器工厂
class HighWeaponFactory implements WeaponFactory{
//可获取绿装45%和蓝装45%和紫装10%,24小时可免费领取一次
public static function createWeapon($ur_id){
$ramdom_num=mt_rand(1,100);
if($ramdom_num<=45){
//给这个用户发放绿装
//将时间重置
}else if($ramdom_num<=90){
//给这个用户发放蓝装
//将时间重置
}else{
//给这个用户发放紫装
//将时间重置
}
}
} //超级武器工厂
class SupWeaponFactory implements WeaponFactory{
//可获取蓝装70%和紫装25%和粉装5%,48小时可免费领取一次
public static function createWeapon($ur_id){
$ramdom_num=mt_rand(1,100);
if($ramdom_num<=70){
//给这个用户发放蓝装
//将时间重置
}else if($ramdom_num<=95){
//给这个用户发放紫装
//将时间重置
}else{
//给这个用户发放粉装
//将时间重置
}
}
}
4、如何在thinkphp里面自定义类?
类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如 DbMysql.class.php;
5、thinkphp中一个文件如何写多个类?
thinkphp是以文件名来关联类名的,所以不支持一个文件里面写一个类
所以一个文件里面只支持一个类
一个文件多个类的功能可以用多级命名空间(文件夹)来代替,而且会更加清晰
6、php在数组中随机取一个?
array_rand — 从数组中随机取出一个或多个单元
mixed array_rand ( array $array
[, int $num
= 1 ] )
如果只取出一个,array_rand() 返回随机单元的键名。 否则就返回包含随机键名的数组。 完成后,就可以根据随机的键获取数组的随机值。 取出数量如果超过 array 的长度,就会导致 E_WARNING
错误,并返回 NULL。
Example #1 array_rand() 例子
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>
7、JS 中如何判断 undefined?
JavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined 的判断。
以下是不正确的用法:
- var exp = undefined;
- if (exp == undefined)
- {
- alert("undefined");
- }
exp 为 null 时,也会得到与 undefined 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 undefined 和 null 时可使用本法。
- var exp = undefined;
- if (typeof(exp) == undefined)
- {
- alert("undefined");
- }
typeof 返回的是字符串,有六种可能:”number”、”string”、”boolean”、”object”、”function”、”undefined”
以下是正确的用法:
- var exp = undefined;
- if (typeof(exp) == "undefined")
- {
- alert("undefined");
- }
8、JS 中如何判断 null?
以下是不正确的用法:
var exp = null; if (exp == null) { alert(“is null”); }
exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 null 和 undefined 时可使用本法。
var exp = null; if (!exp) { alert(“is null”); }
如果 exp 为 undefined 或者数字零,也会得到与 null 相同的结果,虽然 null 和二者不一样。注意:要同时判断 null、undefined 和数字零时可使用本法。
var exp = null;
if (typeof(exp) == “null”)
{
alert(“is null”);
}
为了向下兼容,exp 为 null 时,typeof 总返回 object。
var exp = null;
if (isNull(exp))
{
alert(“is null”);
}
JavaScript 中没有 isNull 这个函数。
以下是正确的用法:
var exp = null;
if (!exp && typeof(exp)!=”undefined” && exp!=0)
{
alert(“is null”);
}
尽管如此,我们在 DOM 应用中,一般只需要用 (!exp) 来判断就可以了,因为 DOM 应用中,可能返回 null,可能返回 undefined,如果具体判断 null 还是 undefined 会使程序过于复杂。
9、js中的js语句和函数和ready函数的关系是什么?
函数和全局变量不必放到ready函数中
语句(调用函数和全局变量)的必须放到ready函数中
10、html中ul和li?
首先,ol和ul分别代表序号和点的那种前缀,真正存在序号内容的是li标签,也就是并不能够仅仅书写ol标签
其次,在默认情况下,CSS的ol标签是存在序号的,如果你引入了CSS的重置文件,则ol的序号会被重置掉(设置为无)。
你可以尝试用如下代码,在你的浏览器当中看看效果
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<!doctype html> < html >
< head >
< meta charset = "UTF-8" >
< title >码匠- H5course</ title >
</ head >
< body >
< ol >
< li >HTML5</ li >
< li >学堂</ li >
< li >h5course</ li >
</ ol >
</ body >
</ html >
|
显示效果:
ul 是无序列表 。内含列表项 li
如:<ul>
<li>列表1</li>
<li>列表2</li>
<li>列表3</li>
</ul>
UL 是没有排序的 。相对的有序列表就是OL。 一般网页都只使用无序列表。
LI 是列表项