我想出了下面的情况:
function Dog () {
"use strict";
this.age = 1;
var name = "Fido";
this.getName = function () { return name; }
}
Run Code Online (Sandbox Code Playgroud)
现在我正在创建一个"Dog"类的新实例并打印变量的值.
var d = new Dog;
document.write('<strong>Dog age:</strong> ' +d.age); \\Outputs "1" as expected
document.write('<br/>');
document.write('<strong>Dog name:</strong> ' +d.name); \\Outputs "undefined" as expected, 'cause it's a private variable.
document.write('<br/>');
document.write('<strong>Get Dog name:</strong> ' +d.getName()); \\Outputs "Fido", as expected.
Run Code Online (Sandbox Code Playgroud)
但是,假设我想改变Dog的名字,如下所示:
d.name = "Stinky";
document.write('<br/>');
document.write('<strong>Dog name Again:</strong> ' +d.name);
document.write('<br/>');
document.write('<strong>Get Dog name Again:</strong> ' +d.getName());
Run Code Online (Sandbox Code Playgroud)
基于此,我提出了几个问题:
为什么x下面示例中的变量返回undefined而不是25?
var x = 25;
(function() {
console.log(x);
var x = 10;
})();Run Code Online (Sandbox Code Playgroud)
如何检查字符串中char的索引?
var str = 'alabama';
alert(str.indexOf('a'));
Run Code Online (Sandbox Code Playgroud)
"indexOf"方法似乎只在第一次出现char时起作用.有任何想法吗?
我想弄清楚返回的setItem方法是什么sessionStorage.据我所知,以下代码返回undefined:
var set = sessionStorage.setItem('foo', 'bar');
console.log(set);
Run Code Online (Sandbox Code Playgroud)
我需要知道项目是否成功设置或是否失败.如何在不知道回报的情况下实现这一目标?
我试图制作一个脚本,根据JSON创建一些按钮,我用我需要的属性传递给它,如下所示:
var opts = {};
opts.buttons = [{
type: "button",
klass: "btn-default",
text: "No"
}, {
type: "button",
klass: "btn-primary",
text: "Yes"
}];
var arr = [];
var button = $("<button></button>");
_.each(opts.buttons, function (v, k) {
button.prop("type", v.type)
.prop("class", v.klass)
.html(v.text);
arr.push(button);
});
Run Code Online (Sandbox Code Playgroud)
然后,将它们串起来,就像这样:
var str = arr.join('');
$('#someEl').html(str);
Run Code Online (Sandbox Code Playgroud)
但这不符合我的想法.返回[object Object] [object Object]而不是按钮标签.
我怎样才能做到这一点?任何帮助都会非常好.
我试图将一些数据传递给angularjs表单但没有成功.我正在定义一个模块,在模板中调用它并将模板绑定到控制器.我们的想法是将一些内容传递给$ scope变量,以便将现有用户名显示为该字段的值.相同的表单将用于添加和编辑用户.在后一种情况下,我会通过获取ID的用户,并通过自己的信息到$scope通过myForm变量.
这里有一个让事情变得简单的人:http ://plnkr.co/edit/nAabxgrw4HqLcgrErVxq?p=preview
模板:
<div ng-app="App">
<form ng-controller="TestController" class="form-horizontal" name="myForm" novalidate>
<div class="form-group" ng-class="{ 'has-error' : myForm.username.$invalid && !form.username.$pristine }">
<div class="col-md-6">
<label class="control-label no-padding-right" for="username">Nome</label>
<input
name="username"
id="username"
ng-model="username"
type="text"
class="form-control"
ng-required="true" />
<p ng-show="myForm.username.$invalid && !myForm.username.$pristine"
class="help-inline no-padding">This field is required</p>
</div>
</div>
<p>{{ myForm.username }}</p>
</form>
</div>
Run Code Online (Sandbox Code Playgroud)
码:
window.angular.module('App', []);
window.angular.module('App').controller('TestController', ['$scope', function ($scope) {
$scope.myForm = {};
$scope.myForm.username = 'John Doe';
}]);
Run Code Online (Sandbox Code Playgroud)
任何帮助都是极好的.