我在Stoyan Stefanov 的JavaScript Patterns一书中看到了以下代码(编辑以消除额外的脂肪):
function Universe() {
var instance = this;
Universe = function() {
return instance;
}
}
Universe.prototype.nothing = true;
var uni = new Universe();
Universe.prototype.everything = true;
var uni2 = new Universe();
uni.nothing; // true
uni2.nothing; // true, but I was expecting undefined
uni.everything; // undefined
uni2.everything; // undefined, but I was expecting true
Run Code Online (Sandbox Code Playgroud)
我期望nothing被分配到原始函数的原型,并被everything分配给闭包的原型(因为第二次赋值在重新定义之后发生).然而,输出结果表明发生了奇怪的事情,而这本书并没有解释它.我也注意到:
Universe.prototype 正如我所料,在重新定义函数后,它会指向不同的对象.__proto__.这就是我不明白的地方.有人可以解释一下吗?
我想从 HTML 元素中获取 display 属性。当我编写内联 CSS 时,它可以工作,但如果我使用一个类,它就不行。
这有效:
<p id="p1" style="display:none;">This is some text.</p>?
<script>alert(document.getElementById("p1").style.display);</script>
Run Code Online (Sandbox Code Playgroud)
这不起作用:
<style>.deneme{ display: none; }?</style>
<p id="p1" class="deneme">This is some text.</p>?
<script>alert(document.getElementById("p1").style.display);</script>
Run Code Online (Sandbox Code Playgroud)
为什么?是否有可能使第二种情况表现得像第一种情况?我该如何解决?
我有一个字符串
var test = "1,2,3,4";
Run Code Online (Sandbox Code Playgroud)
我需要将单引号(' ')附加到此字符串的所有字符,如下所示:
var NewString = " '1','2','3','4' ";
Run Code Online (Sandbox Code Playgroud)
请给我任何建议.
我需要进行两个不同的ajax调用,并将json数据传递给另一个函数.我怎么能使用下面的ajax调用格式呢?
$.ajax({
url:'',
type:'GET',
dataType: 'json',
success: callme
});
$.ajax({
url:'',
type:'GET',
dataType: 'json',
success: callme
});
function callme(JSON1,JSON2){
}
Run Code Online (Sandbox Code Playgroud) 我想在页面上选择多个类,并更改aria-checked="false"到aria-checked="true"。这是我现在使用的脚本:
elms=document.getElementsByClassName("d-va-p a-f-e");
for (i=0;i<elms.length;i++){
if(elms[i].getAttribute("aria-checked")="false")
elms[i].getAttribute("aria-checked")="true"
};
Run Code Online (Sandbox Code Playgroud)
源代码如下。该课程是“d-va-p afe”。
<div class="d-va-p a-f-e" style="-webkit-user-select: none;" role="option" tabindex="-1" aria-checked="false" id=":89">
<div class="a-f-e" style="-webkit-user-select: none;">
<div class="d-va-p-Fe a-f-e" style="-webkit-user-select: none;">
<img src="https://lh4.googleusercontent.com/-FxDBvNDkbj4/AAAAAAAAAAI/AAAAAAAAAAA/q4f7Fc7OF6A/s48-c/photo.jpg" class="d-va-p-Z a-f-e">
</div>
<div class="a-f-e d-va-p-yda" style="-webkit-user-select: none;">
<div class="d-va-p-Ec a-f-e" style="-webkit-user-select: none;">Herb Smith</div>
</div>
</div>
<div class="d-va-p-iI-oc" style="-webkit-user-select: none;">
<span class="a-f-e d-J-Eb-v-YA-Me" style="-webkit-user-select: none;"></span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud) 请考虑以下代码段:
var global = (function(){
return this;
}());
Run Code Online (Sandbox Code Playgroud)
当执行global时将指向window浏览器中的对象.
但这在严格模式下不起作用.为什么?
Underscore.js文档说:
_.each(list,iterator,[context])
迭代元素列表,依次产生迭代器函数.迭代器绑定到上下文对象(如果传递了一个).每个迭代器调用都使用三个参数调用:(element,index,list).如果list是JavaScript对象,则迭代器的参数将是(value,key,list).如果存在,则委托原生forEach函数.
_.each([1, 2, 3], alert);
=> alerts each number in turn...
_.each({one : 1, two : 2, three : 3}, alert);
=> alerts each number value in turn...
Run Code Online (Sandbox Code Playgroud)
上面的粗体文字是什么意思?有人可以提供一个可以解释它的例子吗?
我正在Android Jelly Beans OS上创建一个警告对话框.一切都运作良好,但我想要的是,而不是警报对话框的黑色背景,我想要一个透明的背景.我在stackoverflow上阅读了很多文章和用户的问题,但没有一个能帮助我.
这是我的代码:
AlertDialog.Builder builder = new AlertDialog.Builder(this, R.style.CustomAlertDialog);
builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog1, int which) {
gActivityResult = REQUEST_PICK_CONTACT;
onResume();
return;
} });
builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog1, int which) {
return;
} });
View view = getLayoutInflater().inflate(R.layout.alert_dialog, null);
builder.setTitle(R.string.gender_age);
builder.setInverseBackgroundForced(false);
builder.setView (view);
dialog = builder.create ();
Run Code Online (Sandbox Code Playgroud)
这是我的CustomAlertDialog,它在res/values/styles.xml中定义
<style name="CustomAlertDialog" parent="@android:style/Theme.Dialog">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item …Run Code Online (Sandbox Code Playgroud) android android-layout android-alertdialog android-4.2-jelly-bean
在我的对象的构造函数中,我创建了一些span标记,我需要将它们引用到同一对象的方法中.
这是我的代码示例:
$(document).ready(function(){
var slider = new myObject("name");
});
function myObject(data){
this.name = data;
//Add a span tag, and the onclick must refer to the object's method
$("body").append("<span>Test</span>");
$("span").click(function(){
myMethod(); //I want to exec the method of the current object
});
this.myMethod = myMethod;
function myMethod(){
alert(this.name); //This show undefined
}
}
Run Code Online (Sandbox Code Playgroud)
使用此代码调用该方法,但它不是对象的引用(this.name show undefined)如何解决该问题?
非常感谢!
我知道将列表存储为字符串并不明智,但我必须处理它以导出一些存储的数据.我也知道FIND_IN_SET函数,它返回列表中某个字符串的索引:
SELECT FIND_IN_SET('bar', 'foo,bar,baz');
-- selects 2
Run Code Online (Sandbox Code Playgroud)
是否有任何内置函数(或函数组合)来获取列表的特定索引中的字符串?我正在寻找这样的东西:
SELECT IN_SET_AT_INDEX(2, 'foo,bar,baz');
-- selects 'bar'
Run Code Online (Sandbox Code Playgroud)
我想避免像分裂一样的函数,如果可能的话,使列表成为一个单独的表.
javascript ×8
jquery ×2
android ×1
binding ×1
class ×1
click ×1
ecmascript-5 ×1
getattribute ×1
mysql ×1
prototype ×1
sql ×1
string ×1